|
@@ -1357,10 +1357,10 @@ public class AsyncTask {
|
|
|
PolicyReq policyReq = new PolicyReq();
|
|
|
//2024年7月11日17:57:53 因为化验室的改了 但是 调用决策还得用原来的几个值
|
|
|
String category = tXinyiWarningRecord.getCategory();
|
|
|
- if(ROBOT_XSY_1.getCode().equalsIgnoreCase(category)){
|
|
|
- category = CS_ZD.getCode();
|
|
|
- } else if (ROBOT_XSY_2.getCode().equalsIgnoreCase(category)) {
|
|
|
+ if(ROBOT_XSY_1.getCode().equalsIgnoreCase(category) || ROBOT_XSY_2.getCode().equalsIgnoreCase(category)){
|
|
|
category = CS_ZD.getCode();
|
|
|
+ } else if (ROBOT_ANDAN_1.getCode().equalsIgnoreCase(category) || ROBOT_ANDAN_2.getCode().equalsIgnoreCase(category)) {
|
|
|
+ category = CS_AD.getCode();
|
|
|
}else if (ROBOT_ECCZLSY.getCode().equalsIgnoreCase(category)) {
|
|
|
category = CS_ZL.getCode();
|
|
|
}
|
|
@@ -1519,8 +1519,10 @@ public class AsyncTask {
|
|
|
//2024年7月15日10:57:31 因为新增了化验室的3个指标,也是出水数据
|
|
|
if(category.contains(CHUSHUI)
|
|
|
|| ROBOT_ECCZLSY.getCode().equalsIgnoreCase(category)
|
|
|
- || ROBOT_XSY_2.getCode().equalsIgnoreCase(category)
|
|
|
- || ROBOT_XSY_1.getCode().equalsIgnoreCase(category)){//出水的展示
|
|
|
+ || ROBOT_XSY_1.getCode().equalsIgnoreCase(category)
|
|
|
+ || ROBOT_XSY_2.getCode().equalsIgnoreCase(category)
|
|
|
+ || ROBOT_ANDAN_1.getCode().equalsIgnoreCase(category)
|
|
|
+ || ROBOT_ANDAN_2.getCode().equalsIgnoreCase(category)){//出水的展示
|
|
|
ShowValueCSBasic showValueCSBasic = new ShowValueCSBasic();
|
|
|
if(ZERO_SZ_WARNING.getCode().equals(remark)){//水质报警
|
|
|
showValueCSBasic.setH(ZAIXIANYIBIAO);
|
|
@@ -1711,6 +1713,18 @@ public class AsyncTask {
|
|
|
}else{//有告警信息
|
|
|
Date nowDate = DateUtils.getNowDate();
|
|
|
if(CollectionUtils.isEmpty(tXinyiWarningRecords)){//之前没有告警记录
|
|
|
+ //2024年7月18日16:23:11 新增逻辑,查询是否有连续升高的趋势,如果有才需要报警
|
|
|
+ List<TXinyiIndustry> tXinyiIndustries = this.xinyiIndustryMapper.selectNIndustry(INT_3);
|
|
|
+ if(CollectionUtils.isEmpty(tXinyiIndustries) || tXinyiIndustries.size() < 3){
|
|
|
+ log.error("处理生化报警时,获取最近的3条工业库数据失败~~~~~~~");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ TXinyiIndustry tXinyiIndustry1 = tXinyiIndustries.get(INDEX_1);//前一个小时
|
|
|
+ TXinyiIndustry tXinyiIndustry2 = tXinyiIndustries.get(INDEX_2);//前两个小时
|
|
|
+ if(!this.judgeContinuousIndustry(tXinyiIndustry1, tXinyiIndustry2, category)){
|
|
|
+ log.info("虽然当前超标了,但是没有连续升高趋势,所以不报警,当前没有报警出来的数据为{}\n,前一个小时数据为{}\n前两个小时数据为{}", JSON.toJSONString(tXinyiWarningRecord), JSON.toJSONString(tXinyiIndustry1), JSON.toJSONString(tXinyiIndustry2));
|
|
|
+ return;
|
|
|
+ }
|
|
|
//保存到数据库中
|
|
|
//2024年7月15日11:06:16 因为只有一个告警记录,但是如果一直报警,现在报警时间取的是更新时间,兼容第一次报警处理
|
|
|
tXinyiWarningRecord.setUpdateTime(nowDate);
|
|
@@ -1809,6 +1823,18 @@ public class AsyncTask {
|
|
|
}else{//有告警信息
|
|
|
Date nowDate = DateUtils.getNowDate();
|
|
|
if(CollectionUtils.isEmpty(tXinyiWarningRecords)){//之前没有告警记录
|
|
|
+ //2024年7月18日16:23:11 新增逻辑,查询是否有连续升高的趋势,如果有才需要报警
|
|
|
+ List<TXinyiIndustry> tXinyiIndustries = this.xinyiIndustryMapper.selectNIndustry(INT_3);
|
|
|
+ if(CollectionUtils.isEmpty(tXinyiIndustries) || tXinyiIndustries.size() < 3){
|
|
|
+ log.error("处理生化报警时,获取最近的3条工业库数据失败~~~~~~~");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ TXinyiIndustry tXinyiIndustry1 = tXinyiIndustries.get(INDEX_1);//前一个小时
|
|
|
+ TXinyiIndustry tXinyiIndustry2 = tXinyiIndustries.get(INDEX_2);//前两个小时
|
|
|
+ if(!this.judgeContinuousIndustry(tXinyiIndustry1, tXinyiIndustry2, category)){
|
|
|
+ log.info("虽然当前超标了,但是没有连续升高趋势,所以不报警,当前没有报警出来的数据为{}\n,前一个小时数据为{}\n前两个小时数据为{}", JSON.toJSONString(tXinyiWarningRecord), JSON.toJSONString(tXinyiIndustry1), JSON.toJSONString(tXinyiIndustry2));
|
|
|
+ return;
|
|
|
+ }
|
|
|
//保存到数据库中
|
|
|
//2024年7月15日11:06:16 因为只有一个告警记录,但是如果一直报警,现在报警时间取的是更新时间,兼容第一次报警处理
|
|
|
tXinyiWarningRecord.setUpdateTime(nowDate);
|
|
@@ -1846,6 +1872,64 @@ public class AsyncTask {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private boolean judgeContinuousIndustry(TXinyiIndustry tXinyiIndustry1, TXinyiIndustry tXinyiIndustry2, String category) {
|
|
|
+ boolean result = false;//默认不超标
|
|
|
+ if(BusinessEnum.WarningCategoryEnum.CS_COD.getCode().equals(category)){
|
|
|
+ BigDecimal csCod1 = tXinyiIndustry1.getCsCod();
|
|
|
+ BigDecimal csCod2 = tXinyiIndustry2.getCsCod();
|
|
|
+ if(!Objects.isNull(csCod1) && !Objects.isNull(csCod2) && csCod1.compareTo(csCod2) > INT_0)
|
|
|
+ result = true;
|
|
|
+ }else if(BusinessEnum.WarningCategoryEnum.CS_SS.getCode().equals(category)){
|
|
|
+ BigDecimal csSs1 = tXinyiIndustry1.getCsSs();
|
|
|
+ BigDecimal csSs2 = tXinyiIndustry2.getCsSs();
|
|
|
+ if(!Objects.isNull(csSs1) && !Objects.isNull(csSs2) && csSs1.compareTo(csSs2) > INT_0)
|
|
|
+ result = true;
|
|
|
+ }else if(BusinessEnum.WarningCategoryEnum.CS_ZD.getCode().equals(category)){
|
|
|
+ BigDecimal csTn1 = tXinyiIndustry1.getCsTn();
|
|
|
+ BigDecimal csTn2 = tXinyiIndustry2.getCsTn();
|
|
|
+ if(!Objects.isNull(csTn1) && !Objects.isNull(csTn2) && csTn1.compareTo(csTn2) > INT_0)
|
|
|
+ result = true;
|
|
|
+ }else if(BusinessEnum.WarningCategoryEnum.CS_ZL.getCode().equals(category)){
|
|
|
+ BigDecimal csTp1 = tXinyiIndustry1.getCsTp();
|
|
|
+ BigDecimal csTp2 = tXinyiIndustry2.getCsTp();
|
|
|
+ if(!Objects.isNull(csTp1) && !Objects.isNull(csTp2) && csTp1.compareTo(csTp2) > INT_0)
|
|
|
+ result = true;
|
|
|
+ }else if(BusinessEnum.WarningCategoryEnum.CS_AD.getCode().equals(category)){
|
|
|
+ BigDecimal csNh31 = tXinyiIndustry1.getCsNh3();
|
|
|
+ BigDecimal csNh32 = tXinyiIndustry2.getCsNh3();
|
|
|
+ if(!Objects.isNull(csNh31) && !Objects.isNull(csNh32) && csNh31.compareTo(csNh32) > INT_0)
|
|
|
+ result = true;
|
|
|
+ }else if(BusinessEnum.WarningCategoryEnum.JS_COD.getCode().equals(category)){
|
|
|
+ BigDecimal jsCod1 = tXinyiIndustry1.getJsCod();
|
|
|
+ BigDecimal jsCod2 = tXinyiIndustry2.getJsCod();
|
|
|
+ if(!Objects.isNull(jsCod1) && !Objects.isNull(jsCod2) && jsCod1.compareTo(jsCod2) > INT_0)
|
|
|
+ result = true;
|
|
|
+ }else if(BusinessEnum.WarningCategoryEnum.JS_SS.getCode().equals(category)){
|
|
|
+ BigDecimal jsSs1 = tXinyiIndustry1.getJsSs();
|
|
|
+ BigDecimal jsSs2 = tXinyiIndustry2.getJsSs();
|
|
|
+ if(!Objects.isNull(jsSs1) && !Objects.isNull(jsSs2) && jsSs1.compareTo(jsSs2) > INT_0)
|
|
|
+ result = true;
|
|
|
+ }else if(BusinessEnum.WarningCategoryEnum.JS_ZD.getCode().equals(category)){
|
|
|
+ BigDecimal jsTn1 = tXinyiIndustry1.getJsTn();
|
|
|
+ BigDecimal jsTn2 = tXinyiIndustry2.getJsTn();
|
|
|
+ if(!Objects.isNull(jsTn1) && !Objects.isNull(jsTn2) && jsTn1.compareTo(jsTn2) > INT_0)
|
|
|
+ result = true;
|
|
|
+ }else if(BusinessEnum.WarningCategoryEnum.JS_ZL.getCode().equals(category)){
|
|
|
+ BigDecimal jsTp1 = tXinyiIndustry1.getJsTp();
|
|
|
+ BigDecimal jsTp2 = tXinyiIndustry2.getJsTp();
|
|
|
+ if(!Objects.isNull(jsTp1) && !Objects.isNull(jsTp2) && jsTp1.compareTo(jsTp2) > INT_0)
|
|
|
+ result = true;
|
|
|
+ }else if(BusinessEnum.WarningCategoryEnum.JS_AD.getCode().equals(category)){
|
|
|
+ BigDecimal jsNh31 = tXinyiIndustry1.getJsNh3();
|
|
|
+ BigDecimal jsNh32 = tXinyiIndustry2.getJsNh3();
|
|
|
+ if(!Objects.isNull(jsNh31) && !Objects.isNull(jsNh32) && jsNh31.compareTo(jsNh32) > INT_0)
|
|
|
+ result = true;
|
|
|
+ }else{
|
|
|
+ log.error("暂时还不支持的报警类型~~~~");
|
|
|
+ }
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
private void addChatRecordByDeviceErr(TXinyiWarningRecord tXinyiWarningRecord, TXinyiIndustry tXinyiIndustry, TXinyiNormConfig normConfig) {
|
|
|
ChatReq chatReq = new ChatReq();
|
|
|
//保存聊天记录
|
|
@@ -1906,11 +1990,16 @@ public class AsyncTask {
|
|
|
handleXinYiWarningsRobot(cszzBzz, csTn, cszzGkz, BusinessEnum.WarningCategoryEnum.CS_ZD.getCode(), tXinyiIndustry, normConfig);
|
|
|
}
|
|
|
}*/
|
|
|
+ //总氮的标准值和管控值
|
|
|
+ BigDecimal cszzBzz = normConfig.getCszzBzz();
|
|
|
+ BigDecimal cszzGkz = normConfig.getCszzGkz();
|
|
|
+ //氨氮的标准值和管控值
|
|
|
+ BigDecimal csadBzz = normConfig.getCsadBzz();
|
|
|
+ BigDecimal csadGkz = normConfig.getCsadGkz();
|
|
|
+
|
|
|
//#1好氧硝酸盐
|
|
|
BigDecimal no3Hlj1Jqr = tXinyiRobot.getNo3Hlj1Jqr();
|
|
|
if(!Objects.isNull(no3Hlj1Jqr)){
|
|
|
- BigDecimal cszzBzz = normConfig.getCszzBzz();
|
|
|
- BigDecimal cszzGkz = normConfig.getCszzGkz();
|
|
|
if(!Objects.isNull(cszzBzz)){
|
|
|
handleXinYiWarningsRobot(cszzBzz, no3Hlj1Jqr, cszzGkz, ROBOT_XSY_1.getCode(), tXinyiIndustry, normConfig);
|
|
|
}
|
|
@@ -1919,8 +2008,6 @@ public class AsyncTask {
|
|
|
//#2好氧硝酸盐
|
|
|
BigDecimal no3Hlj2Jqr = tXinyiRobot.getNo3Hlj2Jqr();
|
|
|
if(!Objects.isNull(no3Hlj2Jqr)){
|
|
|
- BigDecimal cszzBzz = normConfig.getCszzBzz();
|
|
|
- BigDecimal cszzGkz = normConfig.getCszzGkz();
|
|
|
if(!Objects.isNull(cszzBzz)){
|
|
|
handleXinYiWarningsRobot(cszzBzz, no3Hlj2Jqr, cszzGkz, ROBOT_XSY_2.getCode(), tXinyiIndustry, normConfig);
|
|
|
}
|
|
@@ -1937,6 +2024,37 @@ public class AsyncTask {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ //2024年7月18日10:48:15 新增报警:出水氨氮 - 连续检测报警
|
|
|
+ //1池
|
|
|
+ BigDecimal no3Qyc1Jqr = tXinyiRobot.getNo3Qyc1Jqr();
|
|
|
+ BigDecimal nh31Jqr = tXinyiRobot.getNh31Jqr();
|
|
|
+ //判断 增加容错
|
|
|
+ if(Objects.isNull(no3Qyc1Jqr))
|
|
|
+ no3Qyc1Jqr = BigDecimal.ZERO;
|
|
|
+ if(Objects.isNull(nh31Jqr))
|
|
|
+ nh31Jqr = BigDecimal.ZERO;
|
|
|
+ if(Objects.isNull(no3Hlj1Jqr))
|
|
|
+ no3Hlj1Jqr = BigDecimal.ZERO;
|
|
|
+ BigDecimal anDan1 = no3Qyc1Jqr.add(nh31Jqr).subtract(no3Hlj1Jqr);
|
|
|
+ if(!Objects.isNull(csadBzz)){
|
|
|
+ handleXinYiWarningsRobot(csadBzz, anDan1, csadGkz, ROBOT_ANDAN_1.getCode(), tXinyiIndustry, normConfig);
|
|
|
+ }
|
|
|
+
|
|
|
+ //2池
|
|
|
+ BigDecimal no3Qyc2Jqr = tXinyiRobot.getNo3Qyc2Jqr();
|
|
|
+ BigDecimal nh32Jqr = tXinyiRobot.getNh32Jqr();
|
|
|
+ //判断 增加容错
|
|
|
+ if(Objects.isNull(no3Qyc2Jqr))
|
|
|
+ no3Qyc2Jqr = BigDecimal.ZERO;
|
|
|
+ if(Objects.isNull(nh32Jqr))
|
|
|
+ nh32Jqr = BigDecimal.ZERO;
|
|
|
+ if(Objects.isNull(no3Hlj2Jqr))
|
|
|
+ no3Hlj2Jqr = BigDecimal.ZERO;
|
|
|
+ BigDecimal anDan2 = no3Qyc2Jqr.add(nh32Jqr).subtract(no3Hlj2Jqr);
|
|
|
+ if(!Objects.isNull(csadBzz)){
|
|
|
+ handleXinYiWarningsRobot(csadBzz, anDan2, csadGkz, ROBOT_ANDAN_2.getCode(), tXinyiIndustry, normConfig);
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -2001,6 +2119,18 @@ public class AsyncTask {
|
|
|
}else{//有告警信息
|
|
|
Date nowDate = DateUtils.getNowDate();
|
|
|
if(CollectionUtils.isEmpty(tXinyiWarningRecords)){//之前没有告警记录
|
|
|
+ //2024年7月18日16:23:11 新增逻辑,查询是否有连续升高的趋势,如果有才需要报警
|
|
|
+ List<TXinyiRobot> tXinyiRobots = this.xinyiRobotMapper.selectNRobot(INT_3);
|
|
|
+ if(CollectionUtils.isEmpty(tXinyiRobots) || tXinyiRobots.size() < 3){
|
|
|
+ log.error("处理连续检测报警时,获取最近的3条化验数据失败~~~~~~~");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ TXinyiRobot tXinyiRobot1 = tXinyiRobots.get(INDEX_1);//前一个小时
|
|
|
+ TXinyiRobot tXinyiRobot2 = tXinyiRobots.get(INDEX_2);//前两个小时
|
|
|
+ if(!this.judgeContinuousRobot(tXinyiRobot1, tXinyiRobot2, category)){
|
|
|
+ log.info("虽然当前超标了,但是没有连续升高趋势,所以不报警,当前没有报警出来的数据为{}\n,前一个小时数据为{}\n前两个小时数据为{}", JSON.toJSONString(tXinyiWarningRecord), JSON.toJSONString(tXinyiIndustry1), JSON.toJSONString(tXinyiIndustry2));
|
|
|
+ return;
|
|
|
+ }
|
|
|
//保存到数据库中
|
|
|
//2024年7月15日11:06:16 因为只有一个告警记录,但是如果一直报警,现在报警时间取的是更新时间,兼容第一次报警处理
|
|
|
tXinyiWarningRecord.setUpdateTime(nowDate);
|
|
@@ -2039,6 +2169,79 @@ public class AsyncTask {
|
|
|
|
|
|
}
|
|
|
|
|
|
+ private boolean judgeContinuousRobot(TXinyiRobot tXinyiRobot1, TXinyiRobot tXinyiRobot2, String category) {
|
|
|
+ boolean result = false;//默认不超标
|
|
|
+ if(BusinessEnum.WarningCategoryEnum.ROBOT_XSY_1.getCode().equals(category)){
|
|
|
+ BigDecimal no3Hlj1Jqr1 = tXinyiRobot1.getNo3Hlj1Jqr();
|
|
|
+ BigDecimal no3Hlj1Jqr2 = tXinyiRobot2.getNo3Hlj1Jqr();
|
|
|
+ if(!Objects.isNull(no3Hlj1Jqr1) && !Objects.isNull(no3Hlj1Jqr2) && no3Hlj1Jqr1.compareTo(no3Hlj1Jqr2) > INT_0)
|
|
|
+ result = true;
|
|
|
+ }else if(BusinessEnum.WarningCategoryEnum.ROBOT_XSY_2.getCode().equals(category)){
|
|
|
+ BigDecimal no3Hlj2Jqr1 = tXinyiRobot1.getNo3Hlj2Jqr();
|
|
|
+ BigDecimal no3Hlj2Jqr2 = tXinyiRobot2.getNo3Hlj2Jqr();
|
|
|
+ if(!Objects.isNull(no3Hlj2Jqr1) && !Objects.isNull(no3Hlj2Jqr2) && no3Hlj2Jqr1.compareTo(no3Hlj2Jqr2) > INT_0)
|
|
|
+ result = true;
|
|
|
+ }else if(BusinessEnum.WarningCategoryEnum.ROBOT_ECCZLSY.getCode().equals(category)){
|
|
|
+ BigDecimal tpRccJqr1 = tXinyiRobot1.getTpRccJqr();
|
|
|
+ BigDecimal tpRccJqr2 = tXinyiRobot2.getTpRccJqr();
|
|
|
+ if(!Objects.isNull(tpRccJqr1) && !Objects.isNull(tpRccJqr2) && tpRccJqr1.compareTo(tpRccJqr2) > INT_0)
|
|
|
+ result = true;
|
|
|
+ }else if(BusinessEnum.WarningCategoryEnum.ROBOT_ANDAN_1.getCode().equals(category)){
|
|
|
+ //计算1
|
|
|
+ BigDecimal no3Qyc1Jqr1 = tXinyiRobot1.getNo3Qyc1Jqr();
|
|
|
+ BigDecimal nh31Jqr1 = tXinyiRobot1.getNh31Jqr();
|
|
|
+ BigDecimal no3Hlj1Jqr1 = tXinyiRobot1.getNo3Hlj1Jqr();
|
|
|
+ if(Objects.isNull(no3Qyc1Jqr1))
|
|
|
+ no3Qyc1Jqr1 = BigDecimal.ZERO;
|
|
|
+ if(Objects.isNull(nh31Jqr1))
|
|
|
+ nh31Jqr1 = BigDecimal.ZERO;
|
|
|
+ if(Objects.isNull(no3Hlj1Jqr1))
|
|
|
+ no3Hlj1Jqr1 = BigDecimal.ZERO;
|
|
|
+ BigDecimal anDan1 = no3Qyc1Jqr1.add(nh31Jqr1).subtract(no3Hlj1Jqr1);
|
|
|
+ //计算2
|
|
|
+ BigDecimal no3Qyc1Jqr2 = tXinyiRobot2.getNo3Qyc1Jqr();
|
|
|
+ BigDecimal nh31Jqr2 = tXinyiRobot2.getNh31Jqr();
|
|
|
+ BigDecimal no3Hlj1Jqr2 = tXinyiRobot2.getNo3Hlj1Jqr();
|
|
|
+ if(Objects.isNull(no3Qyc1Jqr2))
|
|
|
+ no3Qyc1Jqr2 = BigDecimal.ZERO;
|
|
|
+ if(Objects.isNull(nh31Jqr2))
|
|
|
+ nh31Jqr2 = BigDecimal.ZERO;
|
|
|
+ if(Objects.isNull(no3Hlj1Jqr2))
|
|
|
+ no3Hlj1Jqr2 = BigDecimal.ZERO;
|
|
|
+ BigDecimal anDan2 = no3Qyc1Jqr2.add(nh31Jqr2).subtract(no3Hlj1Jqr2);
|
|
|
+ if(anDan1.compareTo(anDan2) > INT_0)
|
|
|
+ result = true;
|
|
|
+ }else if(BusinessEnum.WarningCategoryEnum.ROBOT_ANDAN_2.getCode().equals(category)){
|
|
|
+ //计算1
|
|
|
+ BigDecimal no3Qyc1Jqr1 = tXinyiRobot1.getNo3Qyc2Jqr();
|
|
|
+ BigDecimal nh31Jqr1 = tXinyiRobot1.getNh32Jqr();
|
|
|
+ BigDecimal no3Hlj1Jqr1 = tXinyiRobot1.getNo3Hlj2Jqr();
|
|
|
+ if(Objects.isNull(no3Qyc1Jqr1))
|
|
|
+ no3Qyc1Jqr1 = BigDecimal.ZERO;
|
|
|
+ if(Objects.isNull(nh31Jqr1))
|
|
|
+ nh31Jqr1 = BigDecimal.ZERO;
|
|
|
+ if(Objects.isNull(no3Hlj1Jqr1))
|
|
|
+ no3Hlj1Jqr1 = BigDecimal.ZERO;
|
|
|
+ BigDecimal anDan1 = no3Qyc1Jqr1.add(nh31Jqr1).subtract(no3Hlj1Jqr1);
|
|
|
+ //计算2
|
|
|
+ BigDecimal no3Qyc1Jqr2 = tXinyiRobot2.getNo3Qyc2Jqr();
|
|
|
+ BigDecimal nh31Jqr2 = tXinyiRobot2.getNh32Jqr();
|
|
|
+ BigDecimal no3Hlj1Jqr2 = tXinyiRobot2.getNo3Hlj2Jqr();
|
|
|
+ if(Objects.isNull(no3Qyc1Jqr2))
|
|
|
+ no3Qyc1Jqr2 = BigDecimal.ZERO;
|
|
|
+ if(Objects.isNull(nh31Jqr2))
|
|
|
+ nh31Jqr2 = BigDecimal.ZERO;
|
|
|
+ if(Objects.isNull(no3Hlj1Jqr2))
|
|
|
+ no3Hlj1Jqr2 = BigDecimal.ZERO;
|
|
|
+ BigDecimal anDan2 = no3Qyc1Jqr2.add(nh31Jqr2).subtract(no3Hlj1Jqr2);
|
|
|
+ if(anDan1.compareTo(anDan2) > INT_0)
|
|
|
+ result = true;
|
|
|
+ }else{
|
|
|
+ log.error("暂时还不支持的报警类型~~~~");
|
|
|
+ }
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
*
|
|
|
* 大宽表的数据处理
|