From 9ecaff68d3af65d701daf627081314bc363ceba1 Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Thu, 02 Nov 2017 17:02:47 +0800
Subject: [PATCH] 配置文件 优化

---
 src/main/java/com/moral/monitor/controller/ApiController.java |  187 ++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 155 insertions(+), 32 deletions(-)

diff --git a/src/main/java/com/moral/monitor/controller/ApiController.java b/src/main/java/com/moral/monitor/controller/ApiController.java
index ef4e3ad..8d813d8 100644
--- a/src/main/java/com/moral/monitor/controller/ApiController.java
+++ b/src/main/java/com/moral/monitor/controller/ApiController.java
@@ -1,28 +1,45 @@
 package com.moral.monitor.controller;
 
-import com.moral.monitor.entity.Equipment;
-import com.moral.monitor.entity.User;
-import com.moral.monitor.entity.apientity.*;
-import com.moral.monitor.listener.message.Captcha;
-import com.moral.monitor.service.ApiService;
-import com.moral.monitor.util.ApiData;
-import com.moral.monitor.util.Crypto;
-import com.moral.monitor.util.DateConvert;
-import com.taobao.api.ApiException;
-import net.sf.json.JSONArray;
-import net.sf.json.JSONObject;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+
 import org.apache.commons.lang3.StringUtils;
+import org.apache.log4j.Logger;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.CrossOrigin;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 
-import javax.annotation.Resource;
-import javax.servlet.http.HttpServletRequest;
-import java.io.UnsupportedEncodingException;
-import java.util.ArrayList;
-import java.util.List;
+import com.alibaba.fastjson.JSON;
+import com.moral.monitor.entity.Equipment;
+import com.moral.monitor.entity.EquipmentExample;
+import com.moral.monitor.entity.MonitorPoint;
+import com.moral.monitor.entity.MonitorPointExample;
+import com.moral.monitor.entity.Organization;
+import com.moral.monitor.entity.OrganizationExample;
+import com.moral.monitor.entity.User;
+import com.moral.monitor.entity.apientity.ApiEquipment;
+import com.moral.monitor.entity.apientity.ApiEquipmentInfo;
+import com.moral.monitor.entity.apientity.ApiUser;
+import com.moral.monitor.entity.apientity.RepairQuery;
+import com.moral.monitor.entity.apientity.Report;
+import com.moral.monitor.listener.message.Captcha;
+import com.moral.monitor.service.ApiService;
+import com.moral.monitor.service.EquipmentService;
+import com.moral.monitor.service.MonitorpointService;
+import com.moral.monitor.service.OrganizationService;
+import com.moral.monitor.util.ApiData;
+import com.moral.monitor.util.Crypto;
+import com.moral.monitor.util.DateConvert;
+import com.taobao.api.ApiException;
+
+import net.sf.json.JSONArray;
+import net.sf.json.JSONObject;
 
 /**
  * Created by a on 2017/4/24.
@@ -30,9 +47,9 @@
 @Controller
 @CrossOrigin(origins = "*", maxAge = 3600)
 public class ApiController {
+	private static Logger log = Logger.getLogger(ApiController.class);
     @Resource
     ApiService apiService;
-
     //11������������
     @RequestMapping(value = "reportDevice")
     @ResponseBody
@@ -42,14 +59,10 @@
                              @RequestParam(value ="address")  String address,
                              @RequestParam(value ="longitude")  String longitude,
                              @RequestParam(value ="latitude")  String latitude,
-                             @RequestParam(value ="mac")  String mac ){
-
-        try {
-            request.setCharacterEncoding("UTF-8");
-        } catch (UnsupportedEncodingException e) {
-            e.printStackTrace();
-        }
-
+                             @RequestParam(value ="mac")  String mac,
+                             @RequestParam(value ="monitorpoint")  String monitorpoint,
+                             @RequestParam(value ="ownerId")  String ownerId
+                             ){
         //������������������������������
         ApiData apiData = new ApiData();
         if(StringUtils.isBlank(mac)){
@@ -58,19 +71,32 @@
             apiData.setErrno(0);
             return apiData;
         }
-
         if (StringUtils.isBlank(longitude)){ longitude="0"; }
         if (StringUtils.isBlank(latitude)) { latitude="0"; }
-
-        Equipment equipment = apiService.selectFromequipmentBymac(mac);
-        if (equipment==null){ //������
-            apiService.insertIntoequipment(device_name,address,longitude,latitude,uid,mac);
+    	Equipment equipment =new Equipment();
+    	equipment.setInstaller(uid);
+    	equipment.setName(device_name);
+    	equipment.setAddress(address);
+    	equipment.setLongitude(Double.valueOf(longitude));
+    	equipment.setLatitude(Double.valueOf(latitude));
+    	equipment.setMac(mac);
+    	equipment.setMonitorpoint(monitorpoint);
+    	equipment.setOwnerId(ownerId);
+    	//������������
+    	equipment.setTime(new Date());
+          EquipmentExample example = new EquipmentExample();
+          example.or().andMacEqualTo(mac);
+          long count = equipmentService.queryCountByExample(example);
+          
+        if (count==0){ //������
+        	equipmentService.insertRecord(equipment);
             apiData.setData("");
             apiData.setMessage("������������������");
             apiData.setErrno(0);
         } else { //������
             apiService.updateFromequipmentBymac(device_name, address, longitude, latitude, uid, mac);
             apiData.setData("");
+            equipmentService.updateByMac(equipment);
             apiData.setMessage("������������������");
             apiData.setErrno(0);
         }
@@ -275,7 +301,7 @@
             ae.setDevice_name(e.getName());
             ae.setMac(e.getMac());
             ae.setStatus(e.getState());
-            ae.setFei(e.getFei());
+//            ae.setFei(e.get);
            // ae.setCreate_time(DateConvert.dateConvert(e.getTime()));
             apiEquipments.add(ae);
 
@@ -330,7 +356,7 @@
             ae.setDevice_name(e.getName());
             ae.setMac(e.getMac());
             ae.setStatus(e.getState());
-            ae.setFei(e.getFei());
+//            ae.setFei(e.getFei());
             ae.setCreate_time(DateConvert.dateConvert(e.getTime()));
             apiEquipments.add(ae);
 
@@ -458,5 +484,102 @@
         apiData.setData(s);
         return apiData;
     }
+    @Resource
+    private EquipmentService equipmentService;
+    //11���������mac������������������������������������������������
+    @RequestMapping(value = "getEquInfoByMac")
+    @ResponseBody 
+    public ApiData getEquInfoByMac(String mac) {
+    	ApiData apiData = new ApiData();
+    	try {
+        	if(!StringUtils.isEmpty(mac)) {
+        		EquipmentExample example =	new EquipmentExample();
+        		example.or().andMacEqualTo(mac);
+        		List<Equipment> equList = equipmentService.queryListByExample(example);
+        		if(equList!=null&&equList.size()>0) {
+        			Equipment equipment = equList.get(0);
+        			apiData.setErrno(0);
+        			apiData.setMessage("������mac������������������������������");
+        			apiData.setData(JSON.toJSONString(equipment));
+        		}else {
+        			apiData.setErrno(0);
+        			apiData.setMessage("������mac������������������������������");
+        			apiData.setData(null);
+        		}
+        	}else {
+    			apiData.setErrno(0);
+    			apiData.setMessage("mac������������������");
+    			apiData.setData(null);
+        	}
+		} catch (Exception e) {
+			e.printStackTrace();
+			log.error(e);
+		}
+    	return apiData;
+    }
+    @Resource
+    private MonitorpointService monitorpointService;
+    //12���������������������������������������������������������
+    @RequestMapping(value = "getMpointsByAreaName")
+    @ResponseBody 
+    public ApiData getMpointsByAreaName(String areaName) {
+    	ApiData apiData = new ApiData();
+    	try {
+        	if(!StringUtils.isEmpty(areaName)) {
+        		MonitorPointExample example =	new MonitorPointExample();
+        		example.or().andTbAreaNameEqualTo(areaName);
+        		List<MonitorPoint> list = monitorpointService.queryListByExample(example);
+        		if(list!=null&&list.size()>0) {
+        			apiData.setErrno(0);
+        			apiData.setMessage("���������������(������������)������������������������");
+        			apiData.setData(JSON.toJSONString(list));
+        		}else {
+        			apiData.setErrno(0);
+        			apiData.setMessage("������������(������������)������������������");
+        			apiData.setData(null);
+        		}
+        	}else {
+    			apiData.setErrno(0);
+    			apiData.setMessage("���������(������������)������������������");
+    			apiData.setData(null);
+        	}
+		} catch (Exception e) {
+			e.printStackTrace();
+			log.error(e);
+		}
+    	return apiData;
+    }
+    @Resource
+    OrganizationService organizationService;
+    //13������������������������������������������������������
+    @RequestMapping(value = "getOrgsByAreaName")
+    @ResponseBody 
+    public ApiData getOrgsByAreaName(String areaName) {
+    	ApiData apiData = new ApiData();
+    	try {
+        	if(!StringUtils.isEmpty(areaName)) {
+        		OrganizationExample example =	new OrganizationExample();
+        		example.or().andTbAreaNameEqualTo(areaName).andEnableEqualTo(1);
+        		List<Organization> list = organizationService.queryListByExample(example);
+        		if(list!=null&&list.size()>0) {
+        			apiData.setErrno(0);
+        			apiData.setMessage("������������(������������)������������������������");
+        			apiData.setData(JSON.toJSONString(list));
+        		}else {
+        			apiData.setErrno(0);
+        			apiData.setMessage("������������(������������)���������������������");
+        			apiData.setData(null);
+        		}
+        	}else {
+    			apiData.setErrno(0);
+    			apiData.setMessage("���������(������������)������������������");
+    			apiData.setData(null);
+        	}
+		} catch (Exception e) {
+			e.printStackTrace();
+			log.error(e);
+		}
+    	return apiData;
+    }
 }
 

--
Gitblit v1.8.0