From f28149d8183a62f87fa9c8df9ae589070d83f612 Mon Sep 17 00:00:00 2001
From: 于紫祥_1901 <email@yuzixiang_1910>
Date: Thu, 24 Dec 2020 13:47:50 +0800
Subject: [PATCH] 波动补偿

---
 src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java |   46 ++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 42 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java b/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java
index 24ca266..a5ca8e6 100644
--- a/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java
@@ -4,6 +4,7 @@
 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;
@@ -47,24 +48,55 @@
     @Resource
     AlarmConfigMapper alarmConfigMapper;
     @Override
-    public Optional queryValueByOrganizationId(int 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) {
-                alarmConfigValue = alarmConfig.getValue();
+                return Optional.ofNullable(alarmConfig);
             } else {
                 alarmConfigValue = getDefaultAlarmConfigValue();
             }
         }
-        return Optional.of(alarmConfigValue);
+        AlarmConfig alarmConfigNotWithId = new AlarmConfig();
+        alarmConfigNotWithId.setValue(alarmConfigValue);
+        return Optional.ofNullable(alarmConfigNotWithId);
     }
 
     @Override
     public Optional<AlarmConfig> queryByOrganizationId(int organizationId) {
         AlarmConfig alarmConfig = alarmConfigMapper.selectByOrganizationId(organizationId);
-        return Optional.of(alarmConfig);
+        if(alarmConfig==null){
+            alarmConfig = new AlarmConfig();
+            alarmConfig.setValue(getDefaultAlarmConfigValue());
+        }
+        return Optional.ofNullable(alarmConfig);
+    }
+
+    @Override
+    public String getValueByOrganizationId(int organizationId) {
+        return alarmConfigMapper.getValueByOrganizationId(organizationId);
+    }
+
+    @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
@@ -85,6 +117,12 @@
             throw  ex;
         }
     }
+
+    @Override
+    public int containOrgId(Integer orgId) {
+        return alarmConfigMapper.containOrgId(orgId);
+    }
+
     public AlarmConfigValue simplifyAlarmConfigValue(AlarmConfigValue value){
           Map<String,AlarmSensorLevel> alarmSensorLevelMap = value.getAlarmLevels();
           List<String> cleanKeys = new ArrayList<>();

--
Gitblit v1.8.0