kaiyu
2020-11-16 8489ee9f8d25d41a91061934e102ccc9b39d5b05
src/main/java/com/moral/controller/ScreenController.java
@@ -704,13 +704,32 @@
            parameters.put("sensors", Arrays.asList(sensorKey));
            // monitorPointService.isCompensateCalculation(parameters);
            list = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters);
            list.remove(0);
            if (list.size() == 23) {
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd");
                //获取全格式时间yyyy-MM-dd HH:mm:ss
                time1 = time1 + " 00:00:00";
                Date date = sdf.parse(time1);
                date = DateUtil.rollDay(date, 1);
                //将全格式时间截取
                String time2 = sdf2.format(date);
                parameters.put("time", time2);
                List<Map<String, Object>> nextDayList = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters);
                if(!ObjectUtils.isEmpty(nextDayList)){
                    time1=time1.replaceAll(" 00:00:00"," 24");
                    Map<String, Object> datas = nextDayList.get(0);
                    datas.put("time",time1);
                    list.add(datas);
                }
            }
            for (Map<String, Object> map : list) {
                String time = map.get("time").toString();
                time = time.substring(time.length() - 2);
                map.put("time", Integer.valueOf(time));
                if (parameters.get("type").equals("day")) {
             /*   if (parameters.get("type").equals("day")) {
                    map.put("time", Integer.valueOf(time) + 1);
                }
                }*/
                map.put("value", map.remove(sensorKey));
            }
        }
@@ -2227,7 +2246,6 @@
    }
    @GetMapping("/contrastFactor")
    @ApiOperation(value = "因子对比", notes = "因子对比")
    @ApiImplicitParams(value = {
@@ -2262,13 +2280,9 @@
    }
    @GetMapping("/tellAlarm")
    @PostMapping("/tellAlarm")
    @ResponseBody
    public List<List> tellAlarm(@Param("states") String states,
                                  @Param("orgId") String orgId,
                                  @Param("accountId") String accountId,
                                  @Param("states1") String states1,
                                  @Param("regionCode") String regionCode) {
    public List<List> tellAlarm(String states, String orgId, String accountId, String states1, String regionCode) {
        JSONArray stateList = JSONArray.parseArray(states);//最新的设备数据
        JSONArray stateList1 = JSONArray.parseArray(states1);//前10秒的设备数据
        List<List> lookList = new ArrayList<>();
@@ -2443,7 +2457,7 @@
                        }
                        String state = (String) dataMap.get("state");
                        String state1 = (String) dataMap.get("state1");
                        List<Map> mapList=new ArrayList();
                        List<Map> mapList = new ArrayList();
                        for (String key : list) {
                            if (((Map) aEMap.get("eMap")).containsKey(key)) {
                                Double val = Double.valueOf(sensorMap.get(key).toString());
@@ -2455,23 +2469,23 @@
                                    if ((state1.equals("0") || state1.equals("1")) && Integer.parseInt(state) > 1) {
                                        if (val > Double.valueOf(String.valueOf(valueList.get(1)))) {
                                            Map lookMap = new HashMap();
                                            lookMap.put("time",time);
                                            lookMap.put("name",device.getName());
                                            lookMap.put("sensor",sensors.get("description"));
                                            lookMap.put("value",val + ""+sensors.get("unit"));
                                            lookMap.put("time", time);
                                            lookMap.put("name", device.getName());
                                            lookMap.put("sensor", sensors.get("description"));
                                            lookMap.put("value", val + "" + sensors.get("unit"));
                                            mapList.add(lookMap);
                                           //lookString = time+" "+device.getName()+sensors.get("description")+"="+val + sensors.get("unit")+"超标";
                                           //System.out.println(time + "====" + device.getName() + "=====" + sensors.get("description") + "======" + val + sensors.get("unit"));
                                            //lookString = time+" "+device.getName()+sensors.get("description")+"="+val + sensors.get("unit")+"超标";
                                            //System.out.println(time + "====" + device.getName() + "=====" + sensors.get("description") + "======" + val + sensors.get("unit"));
                                        }
                                    }
                                }else {//判断非六参因子超标
                                } else {//判断非六参因子超标
                                    if (state1.equals("0")) {
                                        if (val > Double.valueOf(String.valueOf(valueList.get(0)))) {
                                            Map lookMap = new HashMap();
                                            lookMap.put("time",time);
                                            lookMap.put("name",device.getName());
                                            lookMap.put("sensor",sensors.get("description"));
                                            lookMap.put("value",val + ""+sensors.get("unit"));
                                            lookMap.put("time", time);
                                            lookMap.put("name", device.getName());
                                            lookMap.put("sensor", sensors.get("description"));
                                            lookMap.put("value", val + "" + sensors.get("unit"));
                                            mapList.add(lookMap);
                                        }
                                    }
@@ -2479,9 +2493,9 @@
                            }
                        }
                        if (mapList.size()>0){
                        if (mapList.size() > 0) {
                            lookList.add(mapList);
                        }else {
                        } else {
                            continue;
                        }
                    }
@@ -2491,24 +2505,24 @@
        return lookList;
    }
  /*  @GetMapping("/lianxian")
    @ApiOperation(value = "连线", notes = "连线" )
    @GetMapping("multiDeviceContrast")
    @ApiOperation(value = "多设备因子对比", notes = "多设备因子对比")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "macs", value = "设备mac,如有多个用逗号分隔", required = true, paramType = "query", dataType = "String"),
            @ApiImplicitParam(name = "sensorKey", value = "传感器key", required = true, paramType = "query", dataType = "String"),
            @ApiImplicitParam(name = "time", value = "时间,日期(格式:2018-03-12)", required = true, paramType = "query", dataType = "String"),})
    public ResultBean<List<Map<String, Object>>> multiDeviceSensor(HttpServletRequest request) throws Exception {
        Map<String, Object> parameters = getParametersStartingWith(request, null);
        ParameterUtils.getTimeType4Time(parameters);
        List<Map<String, Object>> list = historyMinutelyService.getMultiDeviceSensorData(parameters);
        return new ResultBean<List<Map<String, Object>>>(list);
    }
    /*  @GetMapping("/lianxian")
      @ApiOperation(value = "连线", notes = "连线" )
      @GetMapping("multiDeviceContrast")
      @ApiOperation(value = "多设备因子对比", notes = "多设备因子对比")
      @ApiImplicitParams(value = {
              @ApiImplicitParam(name = "macs", value = "设备mac,如有多个用逗号分隔", required = true, paramType = "query", dataType = "String"),
              @ApiImplicitParam(name = "sensorKey", value = "传感器key", required = true, paramType = "query", dataType = "String"),
              @ApiImplicitParam(name = "time", value = "时间,日期(格式:2018-03-12)", required = true, paramType = "query", dataType = "String"),})
      public ResultBean<List<Map<String, Object>>> multiDeviceSensor(HttpServletRequest request) throws Exception {
          Map<String, Object> parameters = getParametersStartingWith(request, null);
          ParameterUtils.getTimeType4Time(parameters);
          List<Map<String, Object>> list = historyMinutelyService.getMultiDeviceSensorData(parameters);
          return new ResultBean<List<Map<String, Object>>>(list);
      }
    /*
    * 根据大屏版本号获取版本更新信息
    */
      /*
      * 根据大屏版本号获取版本更新信息
      */
    @GetMapping("screenVersion")
    public Map<String, Object> getScreenVersion(HttpServletRequest request) {
        Map<String, Object> parameters = getParametersStartingWith(request, null);