|
@@ -1,11 +1,9 @@
|
|
|
package com.persagy.service.impl;
|
|
|
|
|
|
-import com.alibaba.fastjson.JSONObject;
|
|
|
-import com.alibaba.fastjson.TypeReference;
|
|
|
import com.persagy.cache.AlarmInfoCache;
|
|
|
import com.persagy.entity.AlarmDefine;
|
|
|
-import com.persagy.entity.NettyMessage;
|
|
|
import com.persagy.service.AlarmDefineService;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
@@ -19,75 +17,84 @@ import java.util.List;
|
|
|
* @version:V1.0
|
|
|
**/
|
|
|
@Service
|
|
|
+@Slf4j
|
|
|
public class AlarmDefineServiceImpl implements AlarmDefineService {
|
|
|
@Autowired
|
|
|
AlarmInfoCache alarmInfoCache;
|
|
|
|
|
|
@Override
|
|
|
public List listAllAlarmDefine(List<AlarmDefine> alarmDefineList) {
|
|
|
-// String ad = "{\n" +
|
|
|
-// " \"streamId\": \"\",\n" +
|
|
|
-// " \"opCode\": \"\",\n" +
|
|
|
-// " \"content\": [\n" +
|
|
|
-// " {\n" +
|
|
|
-// " \"id\": 1,\n" +
|
|
|
-// " \"objId\": \"obj1\",\n" +
|
|
|
-// " \"itemCode\": \"1055\",\n" +
|
|
|
-// " \"projectId\": \"xxx\",\n" +
|
|
|
-// " \"name\": \"室内高温\",\n" +
|
|
|
-// " \"dealFunc\": \"point\",\n" +
|
|
|
-// " \"category\": \"环境报警\",\n" +
|
|
|
-// " \"level\": \"B\",\n" +
|
|
|
-// " \"remark\": \"我是备注哈\",\n" +
|
|
|
-// " \"open\": 1,\n" +
|
|
|
-// " \"condition\": {\n" +
|
|
|
-// " \"infoCode\": [\n" +
|
|
|
-// " \"$infoCode1\",\n" +
|
|
|
-// " \"$infoCode1\"\n" +
|
|
|
-// " ],\n" +
|
|
|
-// " \"infoCodeId\": [\n" +
|
|
|
-// " {\n" +
|
|
|
-// " \"infoCode\": \"infoCode1\",\n" +
|
|
|
-// " \"meterId\": \"11\",\n" +
|
|
|
-// " \"funcId\": \"12\"\n" +
|
|
|
-// " },\n" +
|
|
|
-// " {\n" +
|
|
|
-// " \"infoCode\": \"infoCode2\",\n" +
|
|
|
-// " \"meterId\": \"21\",\n" +
|
|
|
-// " \"funcId\": \"22\"\n" +
|
|
|
-// " }\n" +
|
|
|
-// " ],\n" +
|
|
|
-// " \"trigger\": \"($infoCode1 > 10 && $infoCode1 < 20) && ($infoCode2 < 20)\",\n" +
|
|
|
-// " \"end\": \"!($infoCode1 < 20 && $infoCode1 > 10)\",\n" +
|
|
|
-// " \"$triggerUphold\": 10,\n" +
|
|
|
-// " \"$endUphold\": 5,\n" +
|
|
|
-// " \"$time\": {\n" +
|
|
|
-// " \"type\": \"period\",\n" +
|
|
|
-// " \"period\": {\n" +
|
|
|
-// " \"$gt\": \"090000\",\n" +
|
|
|
-// " \"$lt\": \"210000\"\n" +
|
|
|
-// " }\n" +
|
|
|
-// " }\n" +
|
|
|
-// " }\n" +
|
|
|
-// " }\n" +
|
|
|
-// " ]\n" +
|
|
|
-// "}";
|
|
|
-// NettyMessage<AlarmDefine> message = JSONObject.parseObject(ad, new TypeReference<NettyMessage<AlarmDefine>>(){});
|
|
|
-// List<AlarmDefine> alarmDefineList =message.getContent();
|
|
|
+ // String ad = "{\n" +
|
|
|
+ // " \"streamId\": \"\",\n" +
|
|
|
+ // " \"opCode\": \"\",\n" +
|
|
|
+ // " \"content\": [\n" +
|
|
|
+ // " {\n" +
|
|
|
+ // " \"id\": 1,\n" +
|
|
|
+ // " \"objId\": \"obj1\",\n" +
|
|
|
+ // " \"itemCode\": \"1055\",\n" +
|
|
|
+ // " \"projectId\": \"xxx\",\n" +
|
|
|
+ // " \"name\": \"室内高温\",\n" +
|
|
|
+ // " \"dealFunc\": \"point\",\n" +
|
|
|
+ // " \"category\": \"环境报警\",\n" +
|
|
|
+ // " \"level\": \"B\",\n" +
|
|
|
+ // " \"remark\": \"我是备注哈\",\n" +
|
|
|
+ // " \"open\": 1,\n" +
|
|
|
+ // " \"condition\": {\n" +
|
|
|
+ // " \"infoCode\": [\n" +
|
|
|
+ // " \"$infoCode1\",\n" +
|
|
|
+ // " \"$infoCode1\"\n" +
|
|
|
+ // " ],\n" +
|
|
|
+ // " \"infoCodeId\": [\n" +
|
|
|
+ // " {\n" +
|
|
|
+ // " \"infoCode\": \"infoCode1\",\n" +
|
|
|
+ // " \"meterId\": \"11\",\n" +
|
|
|
+ // " \"funcId\": \"12\"\n" +
|
|
|
+ // " },\n" +
|
|
|
+ // " {\n" +
|
|
|
+ // " \"infoCode\": \"infoCode2\",\n" +
|
|
|
+ // " \"meterId\": \"21\",\n" +
|
|
|
+ // " \"funcId\": \"22\"\n" +
|
|
|
+ // " }\n" +
|
|
|
+ // " ],\n" +
|
|
|
+ // " \"trigger\": \"($infoCode1 > 10 && $infoCode1 < 20) && ($infoCode2 < 20)\",\n" +
|
|
|
+ // " \"end\": \"!($infoCode1 < 20 && $infoCode1 > 10)\",\n" +
|
|
|
+ // " \"$triggerUphold\": 10,\n" +
|
|
|
+ // " \"$endUphold\": 5,\n" +
|
|
|
+ // " \"$time\": {\n" +
|
|
|
+ // " \"type\": \"period\",\n" +
|
|
|
+ // " \"period\": {\n" +
|
|
|
+ // " \"$gt\": \"090000\",\n" +
|
|
|
+ // " \"$lt\": \"210000\"\n" +
|
|
|
+ // " }\n" +
|
|
|
+ // " }\n" +
|
|
|
+ // " }\n" +
|
|
|
+ // " }\n" +
|
|
|
+ // " ]\n" +
|
|
|
+ // "}";
|
|
|
+ // NettyMessage<AlarmDefine> message = JSONObject.parseObject(ad, new TypeReference<NettyMessage<AlarmDefine>>(){});
|
|
|
+ // List<AlarmDefine> alarmDefineList =message.getContent();
|
|
|
+ log.info("开始清除内存中历史报警定义");
|
|
|
alarmInfoCache.clearAllAlarmDefine();
|
|
|
+ log.info("清除内存中历史报警定义完成");
|
|
|
+ int count = alarmDefineList.size();
|
|
|
+ log.info("共{}条报警定义待存入内存",count);
|
|
|
+ log.info("报警定义开始存入内存");
|
|
|
for (AlarmDefine alarmDefine : alarmDefineList) {
|
|
|
alarmInfoCache.putAlarmDefinitionById(alarmDefine);
|
|
|
+ count--;
|
|
|
+ if (count % 100 == 0) {
|
|
|
+ log.info("还剩{}条报警定义待存入内存", count);
|
|
|
+ }
|
|
|
}
|
|
|
return alarmDefineList;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * @description:批量修改(添加)报警定义
|
|
|
- * (根据报警条目+对象Id先删除,再添加)
|
|
|
+ * @param alarmDefineList:
|
|
|
+ * @description:批量修改(添加)报警定义 (根据报警条目+对象Id先删除,再添加)
|
|
|
* @exception:
|
|
|
* @author: LuoGuangyi
|
|
|
* @company: Persagy Technology Co.,Ltd
|
|
|
- * @param alarmDefineList:
|
|
|
* @return: void
|
|
|
* @since: 2020/10/26 20:38
|
|
|
* @version: V1.0
|
|
@@ -101,11 +108,11 @@ public class AlarmDefineServiceImpl implements AlarmDefineService {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * @param alarmDefineList:
|
|
|
* @description:根据标号功能号删除报警定义
|
|
|
* @exception:
|
|
|
* @author: LuoGuangyi
|
|
|
* @company: Persagy Technology Co.,Ltd
|
|
|
- * @param alarmDefineList:
|
|
|
* @return: void
|
|
|
* @since: 2020/10/29 18:26
|
|
|
* @version: V1.0
|