From 57ac79239ce487db3447345a349296e9493248ce Mon Sep 17 00:00:00 2001 From: kaiyu <404897439@qq.com> Date: Tue, 01 Dec 2020 11:02:22 +0800 Subject: [PATCH] 恢复大屏调用接口 --- src/main/java/com/moral/controller/WebController.java | 104 ++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 85 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/moral/controller/WebController.java b/src/main/java/com/moral/controller/WebController.java index 11b9b2d..6b6bd26 100644 --- a/src/main/java/com/moral/controller/WebController.java +++ b/src/main/java/com/moral/controller/WebController.java @@ -66,28 +66,11 @@ MapPathService mapPathService; + @GetMapping("test") public ResultBean<List<WebProvince>> add(HttpServletRequest request) { String token = request.getHeader("token"); List<WebProvince> mapPath = mapPathService.getMapPath(token); - if (ObjectUtils.isEmpty(mapPath)) - return new ResultBean<>("������������������������", ResultBean.FAIL); - return new ResultBean<>(mapPath); - } - - @GetMapping("redisTest") - public ResultBean<List<WebProvince>> redisTest(HttpServletRequest request) { - String token = request.getHeader("token"); - List<WebProvince> mapPath = mapPathService.getMapPath(token); - if (ObjectUtils.isEmpty(mapPath)) - return new ResultBean<>("������������������������", ResultBean.FAIL); - return new ResultBean<>(mapPath); - } - - @GetMapping("sqlTest") - public ResultBean<List<WebProvince>> sqlTest(HttpServletRequest request) { - String token = request.getHeader("token"); - List<WebProvince> mapPath = mapPathService.getMapPathTest(token); if (ObjectUtils.isEmpty(mapPath)) return new ResultBean<>("������������������������", ResultBean.FAIL); return new ResultBean<>(mapPath); @@ -221,6 +204,74 @@ * @Author: ������������ * @Date: 2020/10/19 */ + + @GetMapping("fiveMinuteAvgDataNew") + public ResultBean<Map<String, Object>> getSensorFiveMinuteAvgDataNew(HttpServletRequest request) { + //���������������������������regionCode + Map<String, Object> parameters = WebUtils.getParametersStartingWith(request, null); + if ((!parameters.containsKey("sensorKey")) || (!parameters.containsKey("regionCode"))) + return ResultBean.fail("���������null"); + String sensorKey = (String) parameters.get("sensorKey"); + String regionCode = (String) parameters.get("regionCode"); + String token = request.getHeader("token"); + + //������orgId������������������������������mac������ + String accountId = WebTokenUtils.getIdBytoken(token); + Account account = accountService.getAccountById(Integer.parseInt(accountId)); + parameters.put("organizationId",account.getOrganizationId()); + List<MonitorPoint> monitorPoints = monitorPointService.getMonitorPointsAndDevicesByRegion(parameters); + if(ObjectUtils.isEmpty(monitorPoints)) + return ResultBean.fail("������������������������������"); + + List<Device> devices = new ArrayList<>(); + for (MonitorPoint monitorPoint : monitorPoints) { + devices.addAll(monitorPoint.getDevices()); + } + if (ObjectUtils.isEmpty(devices)) + return ResultBean.fail("������������������������������"); + + 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<>(); + Integer orgId = account.getOrganizationId(); + 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("fiveMinuteAvgData") public ResultBean<Map<String, Object>> getSensorFiveMinuteAvgData(HttpServletRequest request) { @@ -430,7 +481,7 @@ @UserLoginToken @GetMapping("mapPath") - public ResultBean<List<WebProvince>> mapPath(HttpServletRequest request) { + public ResultBean<List<WebProvince>> getMapPath(HttpServletRequest request) { String token = request.getHeader("token"); List<WebProvince> mapPath = mapPathService.getMapPath(token); if (ObjectUtils.isEmpty(mapPath)) @@ -438,6 +489,21 @@ return new ResultBean<>(mapPath); } + @UserLoginToken + @GetMapping("monitor-points") + public ResultBean<List<MonitorPoint>> getmMnitorPoints(HttpServletRequest request){ + String accountId = WebTokenUtils.getIdBytoken(request.getHeader("token")); + Account account = accountService.getAccountById(Integer.parseInt(accountId)); + String regionCode = request.getParameter("regionCode"); + Map<String,Object> paramMap = new HashMap<>(); + paramMap.put("organizationId",account.getOrganizationId()); + paramMap.put("regionCode",regionCode); + List<MonitorPoint> monitorPoints = monitorPointService.getMonitorPointsAndDevicesByRegion(paramMap); + if (ObjectUtils.isEmpty(monitorPoints)) + return new ResultBean<>("���������������������������", ResultBean.FAIL); + return new ResultBean<>(monitorPoints); + } + /** * @Description: ���������������������������������������state -- Gitblit v1.8.0