From 7a0aeaea540803c0768c10c63ac5e78849f01c7a Mon Sep 17 00:00:00 2001
From: fengxiang <110431245@qq.com>
Date: Wed, 07 Feb 2018 15:25:09 +0800
Subject: [PATCH] 地图相关 bug修复
---
src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java | 52 ++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 46 insertions(+), 6 deletions(-)
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
--
Gitblit v1.8.0