From d1f1b489eea7730bb1cb78cdae24c626db835298 Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Thu, 30 Apr 2020 11:24:16 +0800
Subject: [PATCH] update
---
src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java | 79 ++++++++++++++++++++++++++++++++++++---
1 files changed, 73 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..6ea34b6 100644
--- a/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java
@@ -1,30 +1,97 @@
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.MonitorPoint;
import com.moral.entity.alarm.AlarmConfig;
import com.moral.entity.alarm.AlarmConfigValue;
import com.moral.entity.alarm.AlarmMode;
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<AlarmConfig> 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) {
+ return Optional.ofNullable(alarmConfig);
+ } else {
+ alarmConfigValue = getDefaultAlarmConfigValue();
+ }
+ }
+ AlarmConfig alarmConfigNotWithId = new AlarmConfig();
+ alarmConfigNotWithId.setValue(alarmConfigValue);
+ return Optional.ofNullable(alarmConfigNotWithId);
+ }
+
+ @Override
+ public Optional<AlarmConfig> queryByOrganizationId(int organizationId) {
+ AlarmConfig alarmConfig = alarmConfigMapper.selectByOrganizationId(organizationId);
+ if(alarmConfig==null){
+ alarmConfig = new AlarmConfig();
+ alarmConfig.setValue(getDefaultAlarmConfigValue());
+ }
+ return Optional.ofNullable(alarmConfig);
+ }
+
+ @Override
+ public Optional<AlarmConfig> queryByMonitorPointId(int mpId) {
+ AlarmConfig alarmConfig = alarmConfigMapper.selectByMonitorPointId(mpId);
+ if(alarmConfig==null){
+ alarmConfig = new AlarmConfig();
+ alarmConfig.setValue(getDefaultAlarmConfigValue());
+ }
+ return Optional.ofNullable(alarmConfig);
+ }
+
+ @Override
+ public Optional<AlarmConfig> queryByDeviceMac(String mac) {
+ AlarmConfig alarmConfig = alarmConfigMapper.selectByDeviceMac(mac);
+ if(alarmConfig==null){
+ alarmConfig = new AlarmConfig();
+ alarmConfig.setValue(getDefaultAlarmConfigValue());
+ }
+ return Optional.ofNullable(alarmConfig);
}
@Override
--
Gitblit v1.8.0