From 8d3e4f4b795f44e6d59facb11d7fc0918376f4f2 Mon Sep 17 00:00:00 2001 From: 于紫祥_1901 <email@yuzixiang_1910> Date: Wed, 11 Nov 2020 15:57:24 +0800 Subject: [PATCH] 点击沧州monitor显示整个沧州设备 --- src/main/java/com/moral/service/DeviceService.java | 2 + src/main/java/com/moral/controller/WebController.java | 64 ++++++++++++++++++++++++++++++++ src/main/resources/mapper/DeviceMapper.xml | 3 + src/main/java/com/moral/mapper/DeviceMapper.java | 5 ++ src/main/java/com/moral/service/impl/DeviceServiceImpl.java | 5 ++ 5 files changed, 79 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/moral/controller/WebController.java b/src/main/java/com/moral/controller/WebController.java index 2bd5e3c..f88d02e 100644 --- a/src/main/java/com/moral/controller/WebController.java +++ b/src/main/java/com/moral/controller/WebController.java @@ -305,6 +305,70 @@ 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] diff --git a/src/main/java/com/moral/mapper/DeviceMapper.java b/src/main/java/com/moral/mapper/DeviceMapper.java index 0df5409..a30d2e1 100644 --- a/src/main/java/com/moral/mapper/DeviceMapper.java +++ b/src/main/java/com/moral/mapper/DeviceMapper.java @@ -91,4 +91,9 @@ String byMacGetOrgId(String mac); List<Device> getDevice(String macOrName); + + + List<Device> getDeviceByCityCode(); + + } \ No newline at end of file diff --git a/src/main/java/com/moral/service/DeviceService.java b/src/main/java/com/moral/service/DeviceService.java index a59ca69..0789f53 100644 --- a/src/main/java/com/moral/service/DeviceService.java +++ b/src/main/java/com/moral/service/DeviceService.java @@ -88,4 +88,6 @@ String byMacGetOrgId(String mac); //������mac������������������������������������ List<Device> getDevice(String macOrName); + + List<Device> getDeviceByCode(); } diff --git a/src/main/java/com/moral/service/impl/DeviceServiceImpl.java b/src/main/java/com/moral/service/impl/DeviceServiceImpl.java index 8d30c75..169131e 100644 --- a/src/main/java/com/moral/service/impl/DeviceServiceImpl.java +++ b/src/main/java/com/moral/service/impl/DeviceServiceImpl.java @@ -1093,4 +1093,9 @@ return deviceMapper.getDevice(macOrName); } + @Override + public List<Device> getDeviceByCode() { + return deviceMapper.getDeviceByCityCode(); + } + } diff --git a/src/main/resources/mapper/DeviceMapper.xml b/src/main/resources/mapper/DeviceMapper.xml index b3b9f3d..292dcf0 100644 --- a/src/main/resources/mapper/DeviceMapper.xml +++ b/src/main/resources/mapper/DeviceMapper.xml @@ -574,4 +574,7 @@ select * from device where mac like concat('%',#{macOrName},'%') </select> + <select id="getDeviceByCityCode" resultType="com.moral.entity.Device"> + SELECT d.* FROM `monitor_point` mt,device d where d.monitor_point_id=mt.id and mt.city_code=130900 + </select> </mapper> \ No newline at end of file -- Gitblit v1.8.0