From cd264145f9b4107f1430da46269dd306d26f3116 Mon Sep 17 00:00:00 2001
From: kaiyu <404897439@qq.com>
Date: Mon, 16 Nov 2020 13:16:30 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/main/java/com/moral/controller/WebController.java |   98 +++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 94 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/moral/controller/WebController.java b/src/main/java/com/moral/controller/WebController.java
index 71f880f..f88d02e 100644
--- a/src/main/java/com/moral/controller/WebController.java
+++ b/src/main/java/com/moral/controller/WebController.java
@@ -248,7 +248,7 @@
      */
 
     @GetMapping("fiveMinuteAvgData")
-    public ResultBean<List<Map<String, Object>>> getSensorFiveMinuteAvgData(HttpServletRequest request) {
+    public ResultBean<Map<String,Object>> getSensorFiveMinuteAvgData(HttpServletRequest request) {
         //���������������������������monitorpointId
         Map<String, Object> parameters = WebUtils.getParametersStartingWith(request, null);
         if ((!parameters.containsKey("sensorKey")) || (!parameters.containsKey("monitorPointId")))
@@ -280,12 +280,102 @@
             parameters.put("time", time);
             datas = historyFiveMinutelyService.getFiveMinutesDataByMacsAndTime(parameters);
         }
-
         datas = insertDeviceInfo(datas, devices);
-        return new ResultBean<List<Map<String, Object>>>(datas);
 
+        //������monitorPointId���������������������
+        List<Map<String,Object>> coordinate = new ArrayList<>();
+        MonitorPoint monitorPoint = monitorPointService.queryMonitorPointById(monitorPointId);
+        Integer orgId = monitorPoint.getOrganizationId();
+        List<MonitorPoint> monitorPoints = monitorPointService.getMonitorPointsByOrganizationId(orgId);
+        monitorPoints.forEach(value->{
+            if("���������".equals(value.getDescription())) {
+                List list = LatLngTransformation.Convert_BD09_To_GCJ02(value.getLatitude(), value.getLongitude());
+                Map<String,Object> controlStation = new HashMap<>();
+                controlStation.put("name",value.getName());
+                controlStation.put("longitude", list.get(0));
+                controlStation.put("latitude", list.get(1));
+                coordinate.add(controlStation);
+            }
+        });
+
+        Map<String,Object> datasMap = new HashMap<>();
+        datasMap.put("coordinate",coordinate);
+        datasMap.put("device",datas);
+
+        return new ResultBean<Map<String,Object>>(datasMap);
     }
 
+    @GetMapping("cangzhouMIdGetAllDevice")
+    public ResultBean<Map<String,Object>> cangzhouMIdGetAllDevice(HttpServletRequest request) {
+        //���������������������������monitorpointId
+        Map<String, Object> parameters = WebUtils.getParametersStartingWith(request, null);
+        if ((!parameters.containsKey("sensorKey")) || (!parameters.containsKey("monitorPointId")))
+            return ResultBean.fail("���������null");
+        String sensorKey = (String) parameters.get("sensorKey");
+        Integer monitorPointId = Integer.parseInt((String) parameters.get("monitorPointId"));
+        MonitorPoint mPoint = monitorPointService.queryMonitorPointById(monitorPointId);
+        Integer code = mPoint.getCityCode();
+        List<Device> devices = null;
+        if (code == 130900){
+             devices = deviceService.getDeviceByCode();
+        }else {
+             devices = deviceService.getDevicesByMonitorPointId(monitorPointId);
+        }
+        //������monitorpointId������������������������������mac������
+        if (ObjectUtils.isEmpty(devices))
+            return ResultBean.fail("���������������������monitorPointId������");
+        List<String> macs = new ArrayList<>();
+        devices.forEach(p -> {
+            macs.add(p.getMac());
+        });
+
+        //���������������mac���������������������������������������������������������
+        Map<String, Object> timeAndYearMonth = getTimeAndYearMonthForFiveMinuteData();
+        String time = (String) timeAndYearMonth.get("time");
+        String yearAndMonth = (String) timeAndYearMonth.get("yearAndMonth");
+        parameters.put("time", time);
+        parameters.put("yearAndMonth", yearAndMonth);
+        parameters.put("macs", macs);
+        List<Map<String, Object>> datas = historyFiveMinutelyService.getFiveMinutesDataByMacsAndTime(parameters);
+
+        //������������������������������������������������������������������������������
+        if (ObjectUtils.isEmpty(datas)) {
+            time = getFiveMinuteAgoTime(time);
+            parameters.put("time", time);
+            datas = historyFiveMinutelyService.getFiveMinutesDataByMacsAndTime(parameters);
+        }
+        datas = insertDeviceInfo(datas, devices);
+
+        //������monitorPointId���������������������
+        List<Map<String,Object>> coordinate = new ArrayList<>();
+        MonitorPoint monitorPoint = monitorPointService.queryMonitorPointById(monitorPointId);
+        Integer orgId = monitorPoint.getOrganizationId();
+        List<MonitorPoint> monitorPoints = monitorPointService.getMonitorPointsByOrganizationId(orgId);
+        monitorPoints.forEach(value->{
+            if("���������".equals(value.getDescription())) {
+                List list = LatLngTransformation.Convert_BD09_To_GCJ02(value.getLatitude(), value.getLongitude());
+                Map<String,Object> controlStation = new HashMap<>();
+                controlStation.put("name",value.getName());
+                controlStation.put("longitude", list.get(0));
+                controlStation.put("latitude", list.get(1));
+                coordinate.add(controlStation);
+            }
+        });
+
+        Map<String,Object> datasMap = new HashMap<>();
+        datasMap.put("coordinate",coordinate);
+        datasMap.put("device",datas);
+
+        return new ResultBean<Map<String,Object>>(datasMap);
+    }
+
+    /** 
+    * @Description: ������mac���������������������������������������������������������������������������������
+            * @Param: [request]
+            * @return: com.moral.common.bean.ResultBean<java.util.Map<java.lang.String,java.lang.Object>>
+            * @Author: ������������
+            * @Date: 2020/10/22
+            */ 
     @GetMapping("fiveMinuteAvgDataByMac")
     public ResultBean<Map<String, Object>> fiveMinuteAvgDataByMac(HttpServletRequest request) {
         //���������������mac���
@@ -334,7 +424,7 @@
         });
 
         //������������������
-        Map<String, Object> sortDatas = new LinkedHashMap<>();
+        Map<String, Object> sortDatas = new LinkedHashMap<>();//���������������������������������������
         Device device = deviceService.getDeviceByMac(mac, true);
         sortDatas.put("������", device.getName());
 

--
Gitblit v1.8.0