|
@@ -2,6 +2,8 @@ package com.persagy.controller;
|
|
|
|
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.googlecode.aviator.AviatorEvaluator;
|
|
|
+import com.googlecode.aviator.Expression;
|
|
|
import com.persagy.cache.AlarmInfoCache;
|
|
|
import com.persagy.client.GroupNettyClient;
|
|
|
import com.persagy.entity.NettyMessage;
|
|
@@ -145,5 +147,19 @@ public class HelloWorld {
|
|
|
}
|
|
|
|
|
|
|
|
|
+ private static boolean checkExpression(String expression, HashMap<String, Object> paramMap) {
|
|
|
+ Expression triggerExp = AviatorEvaluator.compile(expression, false);
|
|
|
+ // 执行报警条件公式,得到触发和恢复结果
|
|
|
+ return (Boolean) triggerExp.execute(paramMap);
|
|
|
+ }
|
|
|
+ public static void main(String[] args) {
|
|
|
+// String expression = "EnergyData>Pclose*5%&&CS-ChillersCOP<=1.0";
|
|
|
+ String expression = "EnergyData>Pclose*0.05&&CS-ChillersCOP<=1.";
|
|
|
+ HashMap<String, Object> paramMap = new HashMap<>();
|
|
|
+ paramMap.put("CS-ChillersCOP", 100.0);
|
|
|
+ paramMap.put("EnergyData", 100.0);
|
|
|
+ paramMap.put("Pclose", 3.0);
|
|
|
+ checkExpression(expression, paramMap);
|
|
|
+ }
|
|
|
}
|
|
|
|