From acc6dd66f7ab4d7c9ff7c79196867ef486dd07ae Mon Sep 17 00:00:00 2001 From: xufenglei <xufenglei> Date: Fri, 15 Jun 2018 08:54:16 +0800 Subject: [PATCH] update --- src/main/java/com/moral/controller/ScreenController.java | 87 +++++++++++++++++++++++++++++-------------- 1 files changed, 59 insertions(+), 28 deletions(-) diff --git a/src/main/java/com/moral/controller/ScreenController.java b/src/main/java/com/moral/controller/ScreenController.java index 8cc897a..d827c2a 100644 --- a/src/main/java/com/moral/controller/ScreenController.java +++ b/src/main/java/com/moral/controller/ScreenController.java @@ -36,7 +36,6 @@ import org.springframework.web.servlet.ModelAndView; import org.xml.sax.InputSource; -import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.moral.common.bean.Constants; @@ -62,6 +61,11 @@ import com.moral.service.MonitorPointService; import com.moral.service.SensorService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; + /** * The Class ScreenController.������������ */ @@ -69,6 +73,7 @@ @RequestMapping("/screen") //@CrossOrigin(origins = "*", maxAge = 3600) @SuppressWarnings({ "rawtypes", "unchecked", "unused" }) +@Api(tags = "Screen", description = "������������") public class ScreenController { public static Logger log = Logger.getLogger(ScreenController.class); @Resource @@ -157,36 +162,39 @@ @GetMapping("alarm-levels") public Object getAlarmLevels(HttpServletRequest request, Optional<Integer> orgId, Optional<Integer> mpId) { List<Map<String,Object>> sensorAlarmList = null; - Map<String,AlarmSensorLevel> alarmLevelMap = null; - try { + try { + AlarmConfig alarmConfig = null; if(orgId.isPresent()){ - AlarmConfigValue alarmConfigValue = alarmConfigService.queryValueByOrganizationId(orgId.get()).get(); - alarmLevelMap = alarmConfigValue.getAlarmLevels(); + alarmConfig = alarmConfigService.queryValueByOrganizationId(orgId.get()).get(); }else if(mpId.isPresent()){ - AlarmConfig alarmConfig = alarmConfigService.queryByMonitorPointId(mpId.get()).get(); - alarmLevelMap = alarmConfig.getValue().getAlarmLevels(); + alarmConfig = alarmConfigService.queryByMonitorPointId(mpId.get()).get(); + } + //��������������� + if(alarmConfig.getValue()!=null&&alarmConfig.getValue().getAlarmLevels()!=null){ + Map<String, AlarmSensorLevel> alarmLevelMap = alarmConfig.getValue().getAlarmLevels(); // ������������������������������������������������������ + Map<String,AlarmSensorLevel> defaultSensorLevelMap = null; if(alarmConfig.getId()!=null){ AlarmConfigValue defaultAlarmValue = alarmConfigService.getDefaultAlarmConfigValue(); - Map<String,AlarmSensorLevel> defaultSensorLevelMap = defaultAlarmValue.getAlarmLevels(); - Map<String,AlarmSensorLevel> alarmSensorLevelMapNotZO = alarmLevelMap.entrySet().stream().collect( - HashMap::new, - (map,entry) -> { - AlarmSensorLevel alarmSensorLevel = entry.getValue(); - if(alarmSensorLevel.isEnable()||alarmSensorLevel.isDegressEnable()){ - map.put(entry.getKey(),entry.getValue()); - } - }, - (oMap,nMap) -> { - oMap.putAll(nMap); - } - ); - // ������������������������������������ - defaultSensorLevelMap.putAll(alarmSensorLevelMapNotZO); - alarmLevelMap = defaultSensorLevelMap; + defaultSensorLevelMap = defaultAlarmValue.getAlarmLevels(); } - } - if(alarmLevelMap!=null){ + Map<String, AlarmSensorLevel> finalDefaultSensorLevelMap = defaultSensorLevelMap; + alarmLevelMap.entrySet().stream().forEach(entry -> { + //��� increment������0������������������������ + AlarmSensorLevel alarmSensorLevel = entry.getValue(); + if(alarmSensorLevel.getIncrement()!=null){ + boolean isAllZero = alarmSensorLevel.getIncrement().stream().allMatch(item -> item == 0); + if(isAllZero){ + AlarmSensorLevel defaultAlarmSensorLevel = finalDefaultSensorLevelMap==null?null:finalDefaultSensorLevelMap.get(entry.getKey()); + if(defaultAlarmSensorLevel!=null){ + alarmSensorLevel.setIncrement(defaultAlarmSensorLevel.getIncrement()); + }else{ + List<Float> tempList = Arrays.asList(0.0f,200.0f,500.0f); + alarmSensorLevel.setIncrement(tempList); + } + } + } + }); //map to list Map<String, AlarmSensorLevel> finalAlarmLevelMap = alarmLevelMap; sensorAlarmList = alarmLevelMap.keySet().stream().map(key -> { @@ -371,10 +379,8 @@ @RequestMapping(value = "/map-page", method = RequestMethod.GET) public ModelAndView map(ModelAndView model, @RequestParam("areaCode")int code, @RequestParam("accountId")int accountId){ Account account = accountService.getAccountById(accountId); - String regionName = areaService.selectFullNameByCode(code); + String regionName = areaService.queryFullNameByCode(code); if(account!=null&®ionName!=null){ - //������������ - regionName = regionName.replace(" ",""); Object sensors = sensorService.queryAll(); JSONObject params = new JSONObject(); params.put("regionCode",code); @@ -524,4 +530,29 @@ List<Map<String, Object>> list = (List<Map<String, Object>>) pieData.get(sensorKey); return new ResultBean<List<Map<String, Object>>>(list); } + + /** + * ���������������id������������������version��������� + * @param mptid + * @return + */ + @GetMapping("getvers") + public ResultBean<List<Integer>> getVersions(Integer mptid){ + return new ResultBean<>(monitorPointService.queryVersionsById(mptid)); + } + + @GetMapping("region_ranking_data") + @ApiOperation(value = "������������������", notes = "������������������") + @ApiImplicitParams(value = { + @ApiImplicitParam(name = "regionCode", value = "���������", required = true, paramType = "query", dataType = "String"), + @ApiImplicitParam(name = "dimension", value = "������(profession���region���monitorPoint������)", required = true, paramType = "query", dataType = "String"), + @ApiImplicitParam(name = "sensorKey", value = "���������key", required = true, paramType = "query", dataType = "String"), + @ApiImplicitParam(name = "accountId", value = "������id", required = true, paramType = "query", dataType = "int"), + }) + public ResultBean<List<Map<String, Object>>> getRegionRankingData(HttpServletRequest request){ + Map<String, Object> parameters = getParametersStartingWith(request, null); + List<Map<String, Object>> list = historyService.getRegionRankingData(parameters); + return new ResultBean<List<Map<String, Object>>>(list); + } + } -- Gitblit v1.8.0