|
@@ -40,6 +40,7 @@ import java.math.BigDecimal;
|
|
|
import java.math.RoundingMode;
|
|
|
import java.text.ParseException;
|
|
|
import java.util.*;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
import static com.slibra.common.constant.MyConstants.*;
|
|
|
import static com.slibra.common.enums.BusinessEnum.BigModelWarningTypeRemarkEnum.*;
|
|
@@ -1626,80 +1627,8 @@ public class AsyncTask {
|
|
|
noChangeList.add(warningMoreExceed.getNoChangeWarningRecord());
|
|
|
}
|
|
|
|
|
|
-
|
|
|
- BigDecimal csTp = tXinyiIndustry.getCsTp();
|
|
|
- warningMoreExceed = handleXinYiWarningsCsMore(cszlBzz, csTp, cszlGkz, BusinessEnum.WarningCategoryEnum.CS_ZL.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsTp(), jsslSjz, normConfig.getJszlSjz()));
|
|
|
- if(warningMoreExceed.isBreakpoint()){
|
|
|
- breakpointCount++;
|
|
|
- breakPointList.add(warningMoreExceed.getBreakPointWarningRecord());
|
|
|
- }
|
|
|
- if(warningMoreExceed.isNoChange()){
|
|
|
- noChange++;
|
|
|
- noChangeList.add(warningMoreExceed.getNoChangeWarningRecord());
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- BigDecimal csTn = tXinyiIndustry.getCsTn();
|
|
|
- warningMoreExceed = handleXinYiWarningsCsMore(cszzBzz, csTn, cszzGkz, BusinessEnum.WarningCategoryEnum.CS_ZD.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsTn(), jsslSjz, normConfig.getJszdSjz()));
|
|
|
- if(warningMoreExceed.isBreakpoint()){
|
|
|
- breakpointCount++;
|
|
|
- breakPointList.add(warningMoreExceed.getBreakPointWarningRecord());
|
|
|
- }
|
|
|
- if(warningMoreExceed.isNoChange()){
|
|
|
- noChange++;
|
|
|
- noChangeList.add(warningMoreExceed.getNoChangeWarningRecord());
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- BigDecimal csNh3 = tXinyiIndustry.getCsNh3();
|
|
|
- warningMoreExceed = handleXinYiWarningsCsMore(csadBzz, csNh3, csadGkz, BusinessEnum.WarningCategoryEnum.CS_AD.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsNh3(), jsslSjz, normConfig.getJsadSjz()));
|
|
|
- if(warningMoreExceed.isBreakpoint()){
|
|
|
- breakpointCount++;
|
|
|
- breakPointList.add(warningMoreExceed.getBreakPointWarningRecord());
|
|
|
- }
|
|
|
- if(warningMoreExceed.isNoChange()){
|
|
|
- noChange++;
|
|
|
- noChangeList.add(warningMoreExceed.getNoChangeWarningRecord());
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- BigDecimal csSS = tXinyiIndustry.getCsSs();
|
|
|
- warningMoreExceed = handleXinYiWarningsCsMore(csSSBzz, csSS, csssGkz, BusinessEnum.WarningCategoryEnum.CS_SS.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsSs(), jsslSjz, normConfig.getJsssSjz()));
|
|
|
- if(warningMoreExceed.isBreakpoint()){
|
|
|
- breakpointCount++;
|
|
|
- breakPointList.add(warningMoreExceed.getBreakPointWarningRecord());
|
|
|
- }
|
|
|
- if(warningMoreExceed.isNoChange()){
|
|
|
- noChange++;
|
|
|
- noChangeList.add(warningMoreExceed.getNoChangeWarningRecord());
|
|
|
- }
|
|
|
-
|
|
|
|
|
|
|
|
|
-
|
|
|
- BigDecimal jsTp = tXinyiIndustry.getJsTp();
|
|
|
- warningMoreExceed = handleXinYiWarningRecordJSMore(jszlSjz, jsTp, BusinessEnum.WarningCategoryEnum.JS_ZL.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsTp(), jsslSjz, normConfig.getJszlSjz()));
|
|
|
- if(warningMoreExceed.isBreakpoint()){
|
|
|
- breakpointCount++;
|
|
|
- breakPointList.add(warningMoreExceed.getBreakPointWarningRecord());
|
|
|
- }
|
|
|
- if(warningMoreExceed.isNoChange()){
|
|
|
- noChange++;
|
|
|
- noChangeList.add(warningMoreExceed.getNoChangeWarningRecord());
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- BigDecimal jsCod = tXinyiIndustry.getJsCod();
|
|
|
- warningMoreExceed = handleXinYiWarningRecordJSMore(jscodSjz, jsCod, BusinessEnum.WarningCategoryEnum.JS_COD.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsCod(), jsslSjz, normConfig.getJscodSjz()));
|
|
|
- if(warningMoreExceed.isBreakpoint()){
|
|
|
- breakpointCount++;
|
|
|
- breakPointList.add(warningMoreExceed.getBreakPointWarningRecord());
|
|
|
- }
|
|
|
- if(warningMoreExceed.isNoChange()){
|
|
|
- noChange++;
|
|
|
- noChangeList.add(warningMoreExceed.getNoChangeWarningRecord());
|
|
|
- }
|
|
|
|
|
|
|
|
|
BigDecimal jsTn = tXinyiIndustry.getJsTn();
|
|
@@ -1725,17 +1654,6 @@ public class AsyncTask {
|
|
|
noChangeList.add(warningMoreExceed.getNoChangeWarningRecord());
|
|
|
}
|
|
|
|
|
|
-
|
|
|
- BigDecimal jsSS = tXinyiIndustry.getJsSs();
|
|
|
- warningMoreExceed = handleXinYiWarningRecordJSMore(jsSSSjz, jsSS, BusinessEnum.WarningCategoryEnum.JS_SS.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsSs(), jsslSjz, normConfig.getJsssSjz()));
|
|
|
- if(warningMoreExceed.isBreakpoint()){
|
|
|
- breakpointCount++;
|
|
|
- breakPointList.add(warningMoreExceed.getBreakPointWarningRecord());
|
|
|
- }
|
|
|
- if(warningMoreExceed.isNoChange()){
|
|
|
- noChange++;
|
|
|
- noChangeList.add(warningMoreExceed.getNoChangeWarningRecord());
|
|
|
- }
|
|
|
|
|
|
Date nowDate = DateUtils.getNowDate();
|
|
|
|
|
@@ -1810,28 +1728,6 @@ public class AsyncTask {
|
|
|
}
|
|
|
}
|
|
|
}else{
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- warningRecord.setType(0);
|
|
|
- String msg = BusinessEnum.WarningSymbolEnum.YBGZ_DD_MORE_GYK.getMsg();
|
|
|
- warningRecord.setCategory(msg);
|
|
|
- warningRecord.setTime(nowDate);
|
|
|
- warningRecord.setReason(msg);
|
|
|
- warningRecord.setSymbol(BusinessEnum.WarningSymbolEnum.YBGZ_DD_MORE_GYK.getCode());
|
|
|
- warningRecord.setCreateBy(WARNING_DEFAULT_CREATE);
|
|
|
- warningRecord.setCreateTime(nowDate);
|
|
|
- this.xinyiWarningRecordMapper.insertTXinyiWarningRecord(warningRecord);
|
|
|
-
|
|
|
- addChatRecordByBreakPointsMore(warningRecord, tXinyiIndustry, normConfig);
|
|
|
- }else{
|
|
|
- log.info("工业库报警的时候,发现存在仪表故障(断点多个指标)的报警,并且已经有该类型报警了,不做任何处理");
|
|
|
- }
|
|
|
- log.info("工业库报警的时候,发现存在仪表故障(断点多个指标)的报警,其他报警不再处理");
|
|
|
- return;*/
|
|
|
|
|
|
if(CollectionUtils.isEmpty(tXinyiWarningRecords)){
|
|
|
|
|
@@ -2027,28 +1923,6 @@ public class AsyncTask {
|
|
|
}
|
|
|
}
|
|
|
}else{
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- warningRecordNoChangeMore.setType(0);
|
|
|
- String msg = BusinessEnum.WarningSymbolEnum.YBGZ_LX_MORE.getMsg();
|
|
|
- warningRecordNoChangeMore.setCategory(msg);
|
|
|
- warningRecordNoChangeMore.setTime(nowDate);
|
|
|
- warningRecordNoChangeMore.setReason(msg);
|
|
|
- warningRecordNoChangeMore.setSymbol(BusinessEnum.WarningSymbolEnum.YBGZ_LX_MORE.getCode());
|
|
|
- warningRecordNoChangeMore.setCreateBy(WARNING_DEFAULT_CREATE);
|
|
|
- warningRecordNoChangeMore.setCreateTime(nowDate);
|
|
|
- this.xinyiWarningRecordMapper.insertTXinyiWarningRecord(warningRecordNoChangeMore);
|
|
|
-
|
|
|
- addChatRecordByNoChangeMore(warningRecordNoChangeMore, tXinyiIndustry, normConfig);
|
|
|
- }else{
|
|
|
- log.info("工业库报警的时候,发现存在仪表故障(连续不变多个指标)的报警,并且已经有该类型报警了,不做任何处理");
|
|
|
- }
|
|
|
- log.info("发现存在仪表故障(连续不变多个指标)的报警,其他报警不再处理");
|
|
|
- return;*/
|
|
|
|
|
|
if(CollectionUtils.isEmpty(tXinyiWarningNoChangeMoreRecords)){
|
|
|
|
|
@@ -2178,52 +2052,13 @@ public class AsyncTask {
|
|
|
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- handleXinYiWarningsCsOrigin(cscodBzz, csCod, cscodGkz, CS_COD.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsCod(), jsslSjz, normConfig.getJscodSjz()));
|
|
|
- handleXinYiWarningsCsOrigin(cszlBzz, csTp, cszlGkz, BusinessEnum.WarningCategoryEnum.CS_ZL.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsTp(), jsslSjz, normConfig.getJszlSjz()));
|
|
|
- handleXinYiWarningsCsOrigin(cszzBzz, csTn, cszzGkz, BusinessEnum.WarningCategoryEnum.CS_ZD.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsTn(), jsslSjz, normConfig.getJszdSjz()));
|
|
|
- handleXinYiWarningsCsOrigin(csadBzz, csNh3, csadGkz, BusinessEnum.WarningCategoryEnum.CS_AD.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsNh3(), jsslSjz, normConfig.getJsadSjz()));
|
|
|
- handleXinYiWarningsCsOrigin(csSSBzz, csSS, csssGkz, BusinessEnum.WarningCategoryEnum.CS_SS.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsSs(), jsslSjz, normConfig.getJsssSjz()));
|
|
|
- handleXinYiWarningRecordJSOrigin(jszlSjz, jsTp, BusinessEnum.WarningCategoryEnum.JS_ZL.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsTp(), jsslSjz, normConfig.getJszlSjz()));
|
|
|
- handleXinYiWarningRecordJSOrigin(jscodSjz, jsCod, BusinessEnum.WarningCategoryEnum.JS_COD.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsCod(), jsslSjz, normConfig.getJscodSjz()));
|
|
|
- handleXinYiWarningRecordJSOrigin(jszdSjz, jsTn, BusinessEnum.WarningCategoryEnum.JS_ZD.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsTn(), jsslSjz, normConfig.getJszdSjz()));
|
|
|
- handleXinYiWarningRecordJSOrigin(jsadSjz, jsNh3, BusinessEnum.WarningCategoryEnum.JS_AD.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsNh3(), jsslSjz, normConfig.getJsadSjz()));
|
|
|
- handleXinYiWarningRecordJSOrigin(jsSSSjz, jsSS, BusinessEnum.WarningCategoryEnum.JS_SS.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsSs(), jsslSjz, normConfig.getJsssSjz()));
|
|
|
- }*/
|
|
|
-
|
|
|
-
|
|
|
- }
|
|
|
- if(breakpointCount == 0 && noChange == 1){
|
|
|
- }
|
|
|
- if(breakpointCount == 1 && noChange == 1){
|
|
|
- }*/
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
|
|
|
if(csCodExecute && !Objects.isNull(cscodBzz) && cscodBzz.compareTo(BigDecimal.ZERO) > 0 && !Objects.isNull(cscodGkz) && cscodGkz.compareTo(BigDecimal.ZERO) > 0)
|
|
|
handleXinYiWarningsCsOrigin(cscodBzz, csCod, cscodGkz, CS_COD.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsCod(), jsslSjz, normConfig.getJscodSjz()));
|
|
|
- if(csZLExecute && !Objects.isNull(cszlBzz) && cszlBzz.compareTo(BigDecimal.ZERO) > 0 && !Objects.isNull(cszlGkz) && cszlGkz.compareTo(BigDecimal.ZERO) > 0)
|
|
|
- handleXinYiWarningsCsOrigin(cszlBzz, csTp, cszlGkz, BusinessEnum.WarningCategoryEnum.CS_ZL.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsTp(), jsslSjz, normConfig.getJszlSjz()));
|
|
|
- if(csZDExecute && !Objects.isNull(cszzBzz) && cszzBzz.compareTo(BigDecimal.ZERO) > 0 && !Objects.isNull(cszzGkz) && cszzGkz.compareTo(BigDecimal.ZERO) > 0)
|
|
|
- handleXinYiWarningsCsOrigin(cszzBzz, csTn, cszzGkz, BusinessEnum.WarningCategoryEnum.CS_ZD.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsTn(), jsslSjz, normConfig.getJszdSjz()));
|
|
|
- if(csADExecute && !Objects.isNull(csadBzz) && csadBzz.compareTo(BigDecimal.ZERO) > 0 && !Objects.isNull(csadGkz) && csadGkz.compareTo(BigDecimal.ZERO) > 0)
|
|
|
- handleXinYiWarningsCsOrigin(csadBzz, csNh3, csadGkz, BusinessEnum.WarningCategoryEnum.CS_AD.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsNh3(), jsslSjz, normConfig.getJsadSjz()));
|
|
|
- if(csSSExecute && !Objects.isNull(csSSBzz) && csSSBzz.compareTo(BigDecimal.ZERO) > 0 && !Objects.isNull(csssGkz) && csssGkz.compareTo(BigDecimal.ZERO) > 0)
|
|
|
- handleXinYiWarningsCsOrigin(csSSBzz, csSS, csssGkz, BusinessEnum.WarningCategoryEnum.CS_SS.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsSs(), jsslSjz, normConfig.getJsssSjz()));
|
|
|
- if(jsZLExecute && !Objects.isNull(jszlSjz) && jszlSjz.compareTo(BigDecimal.ZERO) > 0)
|
|
|
- handleXinYiWarningRecordJSOrigin(jszlSjz, jsTp, BusinessEnum.WarningCategoryEnum.JS_ZL.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsTp(), jsslSjz, normConfig.getJszlSjz()));
|
|
|
- if(jsCodExecute && !Objects.isNull(jscodSjz) && jscodSjz.compareTo(BigDecimal.ZERO) > 0)
|
|
|
- handleXinYiWarningRecordJSOrigin(jscodSjz, jsCod, BusinessEnum.WarningCategoryEnum.JS_COD.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsCod(), jsslSjz, normConfig.getJscodSjz()));
|
|
|
if(jsZDExecute && !Objects.isNull(jszdSjz) && jszdSjz.compareTo(BigDecimal.ZERO) > 0)
|
|
|
handleXinYiWarningRecordJSOrigin(jszdSjz, jsTn, BusinessEnum.WarningCategoryEnum.JS_ZD.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsTn(), jsslSjz, normConfig.getJszdSjz()));
|
|
|
if(jsADExecute && !Objects.isNull(jsadSjz) && jsadSjz.compareTo(BigDecimal.ZERO) > 0)
|
|
|
handleXinYiWarningRecordJSOrigin(jsadSjz, jsNh3, BusinessEnum.WarningCategoryEnum.JS_AD.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsNh3(), jsslSjz, normConfig.getJsadSjz()));
|
|
|
- if(jsSSExecute && !Objects.isNull(jsSSSjz) && jsSSSjz.compareTo(BigDecimal.ZERO) > 0)
|
|
|
- handleXinYiWarningRecordJSOrigin(jsSSSjz, jsSS, BusinessEnum.WarningCategoryEnum.JS_SS.getCode(), tXinyiIndustry, normConfig, getCwrwfhzByDetail(jsSlq, tXinyiIndustry.getJsSs(), jsslSjz, normConfig.getJsssSjz()));
|
|
|
-
|
|
|
}
|
|
|
|
|
|
|
|
@@ -5142,6 +4977,73 @@ public class AsyncTask {
|
|
|
|
|
|
String s = "asd@@@1dsa@@@1111@@@1222".replaceAll("@@@1", "!");
|
|
|
System.out.println(s);
|
|
|
+
|
|
|
+ List<String> words = Arrays.asList("apple", "banana", "cherry", "date", "fig", "grape");
|
|
|
+
|
|
|
+
|
|
|
+ Map<Integer, List<String>> lengthMap = words.stream()
|
|
|
+ .collect(Collectors.groupingBy(String::length));
|
|
|
+
|
|
|
+ System.out.println("默认分组(顺序不确定):");
|
|
|
+ lengthMap.forEach((k, v) -> System.out.println(k + ": " + v));
|
|
|
+
|
|
|
+ System.out.println();
|
|
|
+
|
|
|
+
|
|
|
+ Map<Integer, List<String>> sortedMap = words.stream()
|
|
|
+ .collect(Collectors.groupingBy(
|
|
|
+ String::length,
|
|
|
+ TreeMap::new,
|
|
|
+ Collectors.toList()
|
|
|
+ ));
|
|
|
+
|
|
|
+ System.out.println("\n按键自然顺序排序(升序):");
|
|
|
+ sortedMap.forEach((k, v) -> System.out.println(k + ": " + v));
|
|
|
+
|
|
|
+ System.out.println();
|
|
|
+
|
|
|
+
|
|
|
+ Map<Integer, List<String>> reversedMap = words.stream()
|
|
|
+ .collect(Collectors.groupingBy(
|
|
|
+ String::length,
|
|
|
+ () -> new TreeMap<>(Comparator.reverseOrder()),
|
|
|
+ Collectors.toList()
|
|
|
+ ));
|
|
|
+
|
|
|
+ System.out.println("\n按键反转排序(降序):");
|
|
|
+ reversedMap.forEach((k, v) -> System.out.println(k + ": " + v));
|
|
|
+
|
|
|
+ System.out.println();
|
|
|
+
|
|
|
+
|
|
|
+ Map<Integer, List<String>> orderedMap = words.stream()
|
|
|
+ .collect(Collectors.groupingBy(
|
|
|
+ String::length,
|
|
|
+ LinkedHashMap::new,
|
|
|
+ Collectors.toList()
|
|
|
+ ));
|
|
|
+
|
|
|
+ System.out.println("\n保持插入顺序:");
|
|
|
+ orderedMap.forEach((k, v) -> System.out.println(k + ": " + v));
|
|
|
+
|
|
|
+ System.out.println();
|
|
|
+
|
|
|
+
|
|
|
+ Map<Integer, List<String>> groupedMap = words.stream()
|
|
|
+ .collect(Collectors.groupingBy(String::length));
|
|
|
+
|
|
|
+ Map<Integer, List<String>> sortedAfter = new TreeMap<>(groupedMap);
|
|
|
+
|
|
|
+ System.out.println("\n对已有分组结果按键排序(升序):");
|
|
|
+ sortedAfter.forEach((k, v) -> System.out.println(k + ": " + v));
|
|
|
+
|
|
|
+
|
|
|
+ Map<Integer, List<String>> reversedAfter = new TreeMap<>(Comparator.reverseOrder());
|
|
|
+ reversedAfter.putAll(groupedMap);
|
|
|
+
|
|
|
+ System.out.println("\n对已有分组结果按键反转排序(降序):");
|
|
|
+ reversedAfter.forEach((k, v) -> System.out.println(k + ": " + v));
|
|
|
+
|
|
|
}
|
|
|
|
|
|
|