diff --git a/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/task/AbnormalDeviceProcessor.java b/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/task/AbnormalDeviceProcessor.java index 91520dd0..5b9b53ba 100644 --- a/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/task/AbnormalDeviceProcessor.java +++ b/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/task/AbnormalDeviceProcessor.java @@ -104,7 +104,6 @@ public class AbnormalDeviceProcessor{ } void insertData(String noDataDeviceId,double refGnssData1[],double refGnssData2[]){ - logger.debug("{} abnormal process"); if(refGnssData1!=null && refGnssData2!=null){ logger.debug("{} delta: {},{},{}",noDataDeviceId, (refGnssData1[0]+refGnssData2[0])/2, @@ -150,7 +149,7 @@ public class AbnormalDeviceProcessor{ queryWrapper.eq("deviceid",deviceId); queryWrapper.eq("enabled",true); queryWrapper.isNotNull("rpose"); - queryWrapper.ge("createtime",now.minusHours(24)); + queryWrapper.ge("createtime",now.minusHours(2)); queryWrapper.orderByDesc("createtime"); queryWrapper.last("limit 2"); @@ -158,9 +157,17 @@ public class AbnormalDeviceProcessor{ } void checkNotGoodDevice(String deviceId, String refDeviceId1){ + LocalDateTime validTime = LocalDateTime.now().minusMinutes(10); + // 待修改的点 List calcDataList = getLastTwo(deviceId); + if(calcDataList.size() == 2){ + if(calcDataList.get(0).getCreatetime().isBefore(validTime)) return; + } + else return; + // 参考点 List calcDataList1 = getLastTwo(refDeviceId1); - if(calcDataList.size() == 2 && calcDataList1.size()==2){ + if(calcDataList1.size()==2){ + if(calcDataList1.get(0).getCreatetime().isBefore(validTime)) return; double deltaU = calcDataList1.get(0).getRposd() - calcDataList1.get(1).getRposd(); GnssCalcData calcData = calcDataList.get(0); calcData.setRposd(calcDataList.get(1).getRposd()+deltaU);