From a8532c88680e4ab213c269ec91da5b223f62332f Mon Sep 17 00:00:00 2001
From: fengxiang <110431245@qq.com>
Date: Wed, 07 Feb 2018 14:12:26 +0800
Subject: [PATCH] 地图相关资源
---
src/main/java/com/moral/service/AlarmConfigService.java | 7 ++-
src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java | 52 +++++++++++++++++++++++---
src/main/webapp/view/map.jsp | 8 +++
src/main/java/com/moral/controller/AlarmConfigController.java | 2
src/main/java/com/moral/controller/ScreenController.java | 38 +++++++++++-------
src/main/resources/system/alarmLevels.json | 2
6 files changed, 83 insertions(+), 26 deletions(-)
diff --git a/src/main/java/com/moral/controller/AlarmConfigController.java b/src/main/java/com/moral/controller/AlarmConfigController.java
index 70e1121..7d5cecd 100644
--- a/src/main/java/com/moral/controller/AlarmConfigController.java
+++ b/src/main/java/com/moral/controller/AlarmConfigController.java
@@ -17,7 +17,7 @@
AlarmConfigService alarmConfigService;
@GetMapping("get-by-oid")
public ResultBean<AlarmConfig> getAlarmConfigByOrganizationId(int organizationId){
- AlarmConfig alarmConfig = alarmConfigService.SelectByOrganizationId(organizationId);
+ AlarmConfig alarmConfig = alarmConfigService.queryByOrganizationId(organizationId).get();
ResultBean resultBean = new ResultBean();
resultBean.setCode(ResultBean.SUCCESS);
resultBean.setData(alarmConfig);
diff --git a/src/main/java/com/moral/controller/ScreenController.java b/src/main/java/com/moral/controller/ScreenController.java
index 88efaf1..e8bd1c8 100644
--- a/src/main/java/com/moral/controller/ScreenController.java
+++ b/src/main/java/com/moral/controller/ScreenController.java
@@ -6,7 +6,9 @@
import static com.moral.common.util.WebUtils.getParametersStartingWith;
import java.io.*;
+import java.lang.reflect.InvocationTargetException;
import java.util.*;
+import java.util.stream.Collectors;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@@ -19,7 +21,10 @@
import com.moral.entity.Device;
import com.moral.entity.MapBounds;
import com.moral.entity.MonitorPoint;
+import com.moral.entity.alarm.AlarmConfigValue;
+import com.moral.entity.alarm.AlarmSensorLevel;
import com.moral.service.*;
+import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang.ArrayUtils;
import org.apache.commons.net.ftp.FTPClient;
@@ -46,7 +51,8 @@
//@CrossOrigin(origins = "*", maxAge = 3600)
public class ScreenController {
public static Logger log = Logger.getLogger(ScreenController.class);
-
+ @Resource
+ AlarmConfigService alarmConfigService;
@Resource
AreaService areaService;
@@ -128,23 +134,25 @@
*/
@SuppressWarnings("resource")
@GetMapping("alarm-levels")
- public Map<String, Object> getAlarmLevels(HttpServletRequest request,String orgId) {
- Map<String, Object> result = new LinkedHashMap<String, Object>();
- String key = levelKey + orgId;
+ public Object getAlarmLevels(HttpServletRequest request, Integer orgId) {
+ List<Map<String,Object>> sensorAlarmList = null;
+ AlarmConfigValue alarmConfigValue = null;
try {
- if (hasKey(redisTemplate, key)) {
- String levelConfigStr = get(redisTemplate, key);
- result = JSON.parseObject(levelConfigStr, new TypeReference<Map<String, Object>>() {});
- } else {
- InputStreamReader reader = new InputStreamReader(resource.getInputStream());
- result = new JSONReader(reader).readObject(new TypeReference<LinkedHashMap<String, Object>>() {});
- }
-
- } catch (IOException e) {
+ alarmConfigValue = alarmConfigService.queryValueByOrganizationId(orgId).get();
+ Map<String,AlarmSensorLevel> alarmLevelMap = alarmConfigValue.getAlarmLevels();
+ sensorAlarmList = alarmLevelMap.keySet().stream().map(key -> {
+ AlarmSensorLevel alarmSensorLevel = alarmLevelMap.get(key);
+ JSONObject alarmSensorLevelMap = (JSONObject) JSON.toJSON(alarmSensorLevel);
+ alarmSensorLevelMap.put("key",key);
+ return alarmSensorLevelMap;
+ }).collect(Collectors.toList());
+ } catch (Exception e) {
e.printStackTrace();
- result.put("msg", "���������������������������������������������������" + e.getMessage());
+ Map<String, Object> err = new LinkedHashMap<String, Object>();
+ err.put("msg", "���������������������������������������������������" + e.getMessage());
+ return err;
}
- return result;
+ return sensorAlarmList;
}
/**
diff --git a/src/main/java/com/moral/service/AlarmConfigService.java b/src/main/java/com/moral/service/AlarmConfigService.java
index 4080244..0701630 100644
--- a/src/main/java/com/moral/service/AlarmConfigService.java
+++ b/src/main/java/com/moral/service/AlarmConfigService.java
@@ -1,9 +1,12 @@
package com.moral.service;
import com.moral.entity.alarm.AlarmConfig;
+import com.moral.entity.alarm.AlarmConfigValue;
+
+import java.util.Optional;
public interface AlarmConfigService {
- public AlarmConfig SelectByOrganizationId(int organizationId);
-
+ public Optional<AlarmConfigValue> queryValueByOrganizationId(int organizationId);
+ public Optional<AlarmConfig> queryByOrganizationId(int organizationId);
void addOrModify(AlarmConfig alarmConfig);
}
diff --git a/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java b/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java
index d4720d9..8b9651c 100644
--- a/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java
@@ -1,5 +1,7 @@
package com.moral.service.impl;
+import com.alibaba.fastjson.JSONReader;
+import com.alibaba.fastjson.TypeReference;
import com.moral.common.bean.Constants;
import com.moral.common.util.RedisUtils;
import com.moral.entity.alarm.AlarmConfig;
@@ -8,23 +10,61 @@
import com.moral.entity.alarm.AlarmSensorLevel;
import com.moral.mapper.AlarmConfigMapper;
import com.moral.service.AlarmConfigService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.boot.autoconfigure.session.SessionProperties;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.util.*;
@Service
public class AlarmConfigServiceImpl implements AlarmConfigService{
+ /** ������������������������ .*/
+ @Value(value = "classpath:system/alarmLevels.json")
+ private org.springframework.core.io.Resource resource;
+ private static AlarmConfigValue defaultAlarmConfigValue;
+ @Autowired
+ public AlarmConfigValue getDefaultAlarmConfigValue(){
+ if(defaultAlarmConfigValue!=null){
+ return defaultAlarmConfigValue;
+ }else {
+ InputStreamReader reader = null;
+ AlarmConfigValue alarmConfigValue = null;
+ try {
+ reader = new InputStreamReader(resource.getInputStream());
+ alarmConfigValue = new JSONReader(reader).readObject(new TypeReference<AlarmConfigValue>() {});
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ return alarmConfigValue;
+ }
+ }
@Resource
RedisUtils redisUtils;
@Resource
AlarmConfigMapper alarmConfigMapper;
@Override
- public AlarmConfig SelectByOrganizationId(int organizationId) {
- return alarmConfigMapper.selectByOrganizationId(organizationId);
+ public Optional queryValueByOrganizationId(int organizationId) {
+ String key = RedisUtils.getAlarmKey(organizationId);
+ AlarmConfigValue alarmConfigValue = redisUtils.get(key,new TypeReference<AlarmConfigValue>(){});
+ if(alarmConfigValue==null){
+ AlarmConfig alarmConfig = alarmConfigMapper.selectByOrganizationId(organizationId);
+ if(alarmConfig!=null&&alarmConfig.getValue()!=null){
+ alarmConfigValue = alarmConfig.getValue();
+ }else{
+ alarmConfigValue = getDefaultAlarmConfigValue();
+ }
+ }
+ return Optional.of(alarmConfigValue);
+ }
+
+ @Override
+ public Optional<AlarmConfig> queryByOrganizationId(int organizationId) {
+ AlarmConfig alarmConfig = alarmConfigMapper.selectByOrganizationId(organizationId);
+ return Optional.of(alarmConfig);
}
@Override
diff --git a/src/main/resources/system/alarmLevels.json b/src/main/resources/system/alarmLevels.json
index 74a507c..7b1a534 100644
--- a/src/main/resources/system/alarmLevels.json
+++ b/src/main/resources/system/alarmLevels.json
@@ -1,6 +1,6 @@
{
"alarmMode": {
- "enable": 1,
+ "enable": 0,
"level1": [],
"level2": [],
"level3": []
diff --git a/src/main/webapp/view/map.jsp b/src/main/webapp/view/map.jsp
index 11ede8b..0b02bf5 100644
--- a/src/main/webapp/view/map.jsp
+++ b/src/main/webapp/view/map.jsp
@@ -333,6 +333,12 @@
alert(equStr);
}
}
+ obj['mouseover'] = function (type) {
+ if(type.target.getData()==null){
+ //��������������������������������������������������� ������������������
+ refreshAllState();
+ }
+ }
var moralMask = new moralMap.Equipment(obj);
moralMap.addOverlay(moralMask);
}
@@ -410,7 +416,7 @@
}
setTimeout(function(){
refreshAllState();
- },2000);
+ },5000);
}
function stopRefreshPage(){
window.clearInterval(_intervalNum);
--
Gitblit v1.8.0