From dbed3099ea0dd2a517b739f29943d4ee529760e6 Mon Sep 17 00:00:00 2001 From: xufenglei <xufenglei> Date: Mon, 17 Jun 2019 15:23:45 +0800 Subject: [PATCH] Merge branch 'master' of http://xufenglei@blit.7drlb.com:8888/r/screen_api_v2.git --- src/main/java/com/moral/controller/ScreenController.java | 84 +++++++++++++++++++----------------------- 1 files changed, 38 insertions(+), 46 deletions(-) diff --git a/src/main/java/com/moral/controller/ScreenController.java b/src/main/java/com/moral/controller/ScreenController.java index 2d75e1e..f9c053d 100644 --- a/src/main/java/com/moral/controller/ScreenController.java +++ b/src/main/java/com/moral/controller/ScreenController.java @@ -946,19 +946,17 @@ return new ResultBean<Map<String, Object>>(map); }*/ - /*@GetMapping("getSensorByMonitorPointId") + @GetMapping("getSensorByMonitorPointId") @ApiOperation(value = "������������", notes = "������������") @ApiImplicitParams(value = { @ApiImplicitParam(name = "monitor_point_id", value = "������������id", required = true, paramType = "query", dataType = "String") }) - public ResultBean<Map<String, Object>> getSensorByMonitorPointId(HttpServletRequest request) throws Exception { + public ResultBean<List<Map<String, Object>>> getSensorByMonitorPointId(HttpServletRequest request) throws Exception { Map<String, Object> parameters = WebUtils.getParametersStartingWith(request, null); String monitor_point_id = (String) parameters.get("monitor_point_id"); - System.out.println("ScreenController-----getSensorByMonitorPointId-----monitor_point_id:"+monitor_point_id); - Map<String, Object> map = sensorUnitService.getSensorsByMonitPointId(monitor_point_id); - System.out.println("ScreenController-----getSensorByMonitorPointId-----map:"+map); - return new ResultBean<Map<String, Object>>(map); - }*/ + List<Map<String, Object>> map = sensorUnitService.getSensorsByMonitPointId2(monitor_point_id); + return new ResultBean<List<Map<String, Object>>>(map); + } @GetMapping("AIForecast") @ApiOperation(value = "AI������", notes = "AI������") @@ -970,46 +968,40 @@ }) public ResultBean<List<Map<String, Object>>> AIForecast (HttpServletRequest request) throws Exception { Map<String, Object> parameters = getParametersStartingWith(request, null); - ParameterUtils.getTimeType4Time(parameters); + ParameterUtils.getTimeType4Time(parameters); String monitor_point_id = (String) parameters.get("monitorPoint"); - parameters.put("monitorPointId", parameters.remove("monitorPoint")); - Object sensorKey = parameters.remove("sensorKey"); - parameters.put("sensors", Arrays.asList(sensorKey)); - List<Map<String, Object>> list = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters); - System.out.println("ScreenController-----AIForecast-----list:"+list); - - //������������������ - Map<String, Map<String, Object>> sensorMap = sensorUnitService.getSensorsByMonitPointId(monitor_point_id); - - if(sensorMap!=null && !sensorMap.isEmpty()) { - for (Map<String, Object> map : list) { - String time = map.get("time").toString(); - time = time.substring(time.length() - 2); - map.put("time", Integer.valueOf(time)); - map.put("value", map.remove(sensorKey)); - String sensor = map.get("sensorKey").toString(); - if(sensorMap.get(sensor)!=null) { - map.put("unit", sensorMap.get("unit")); - map.put("name", sensorMap.get("name")); - map.put("rules", sensorMap.get("rules")); - }else { - map.put("unit", null); - map.put("name", null); - map.put("rules", null); - } - } - }else { - for (Map<String, Object> map : list) { - String time = map.get("time").toString(); - time = time.substring(time.length() - 2); - map.put("time", Integer.valueOf(time)); - map.put("value", map.remove(sensorKey)); - map.put("unit", null); - map.put("name", null); - map.put("rules", null); - } - } - //return null; + parameters.put("monitorPointId", parameters.remove("monitorPoint")); + String[] sensorKeys = parameters.remove("sensorKey").toString().split(","); + parameters.put("sensors", Arrays.asList(sensorKeys)); + // monitorPointService.isCompensateCalculation(parameters); + List<Map<String, Object>> list = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters); + + //������������������ + Map<String, Map<String, Object>> sensorUnitMap = sensorUnitService.getSensorsByMonitPointId(monitor_point_id); + + for (Map<String, Object> map : list) { + String time = map.get("time").toString(); + time = time.substring(time.length() - 2); + map.put("time", Integer.valueOf(time)); + List<Number> values = new ArrayList<Number>(); + List<String> units = new ArrayList<String>(); + for (String string : sensorKeys) { + if(sensorUnitMap!=null && !sensorUnitMap.isEmpty()) { + if(sensorUnitMap.get(string)!=null) { + units.add(sensorUnitMap.get(string).get("name").toString()); + }else { + Map<String, Object> sensorMap = sensorService.getSensorBySensorKey(string); + units.add(sensorMap.get("unit").toString()); + } + }else { + Map<String, Object> sensorMap = sensorService.getSensorBySensorKey(string); + units.add(sensorMap.get("unit").toString()); + } + values.add((Number) map.remove(string)); + } + map.put("values", values); + map.put("units", units); + } return new ResultBean<List<Map<String, Object>>>(list); } -- Gitblit v1.8.0