Selaa lähdekoodia

优化采集程序,避免不符合阈值的报警写入库,避免间隔较长的同向波动进行叠加记录

chenwen 3 vuotta sitten
vanhempi
commit
c22f6c22f0

+ 2 - 1
src/main/java/com/hb/proj/server/OilChecker.java

@@ -84,6 +84,7 @@ public class OilChecker {
 			lastJump.setWaveFilter(true);
 			TaskExecutor.execute(new OilCheckTask(lastJump));
 			chanageDatas.put(newData.getDtuNum(), null);
+			lastJump=null; //add 2022.6.16
 		}
 		
 		//数据未更新重复数据 主要针对3318模式
@@ -121,7 +122,7 @@ public class OilChecker {
 			}
 			
 			if(Math.abs(diff)>=5){
-				if(lastJump==null){ //一个跳变
+				if(lastJump==null){ //新的一个跳变
 					lastJump=new OilChangeBO(newData.getCarId(),newData.getDtuNum(),diff,newData.getDataTime(),oldData.getDataTime());
 					lastJump.setMountId(newData.getMountId());
 					lastJump.setDiffH(diffH);

+ 5 - 0
src/main/java/com/hb/proj/server/OilDetecter.java

@@ -41,6 +41,11 @@ public class OilDetecter {
 			}
 		}
 		else{  //同向加强,逐步加强,但还不支持逐步恢复,不能一次恢复的就会认为是:补偿后差值过大不认为是杂波,需要记录事件
+			
+			if(diffTimes>300000){  //2022.6.16 同向加强超过5分钟,就分开处理
+				return JUMP_EVENT;
+			}
+			
 			jumpBO.setDiffVolume(preJump.doubleValue()+newJump.doubleValue());
 			return IGNORE;
 		}