1、优化断点续传
This commit is contained in:
parent
d8951a9f25
commit
aaa1740f13
@ -76,10 +76,8 @@ public class MultiLineGNSSCalcService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 处理d341
|
// 处理d341
|
||||||
logger.info(deviceId + " D342 msg time: " + msgTime);
|
|
||||||
lastD342Time.createTime = msgTime;
|
lastD342Time.createTime = msgTime;
|
||||||
lastD342Time.uploadTime = LocalDateTime.now();
|
lastD342Time.uploadTime = LocalDateTime.now();
|
||||||
logger.info(deviceId + " lastD342Time: " + lastD342Time.createTime);
|
|
||||||
|
|
||||||
for(BaseMessage message: d342Message.getMessageList()){
|
for(BaseMessage message: d342Message.getMessageList()){
|
||||||
D341LocationMessage d341Message = (D341LocationMessage)message;
|
D341LocationMessage d341Message = (D341LocationMessage)message;
|
||||||
@ -147,7 +145,8 @@ public class MultiLineGNSSCalcService {
|
|||||||
d342SessionDone(deviceId,tenantId,lastD342Time.createTime);
|
d342SessionDone(deviceId,tenantId,lastD342Time.createTime);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
return lastD342Time.createTime;
|
return lastD342Time.createTime;
|
||||||
}
|
}
|
||||||
|
else return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -72,6 +72,35 @@ public class SingleLineGNSSCalcService implements GNSSDataCalcService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void calSingleDone(String deviceId, Integer tenantId, LocalDateTime resultTime) {
|
public void calSingleDone(String deviceId, Integer tenantId, LocalDateTime resultTime) {
|
||||||
|
executorService.schedule(() -> {
|
||||||
|
try {
|
||||||
|
calCycleResult(deviceId, tenantId, resultTime);
|
||||||
|
} catch (Exception e) {
|
||||||
|
logger.error(e.toString());
|
||||||
|
}
|
||||||
|
},50, TimeUnit.MILLISECONDS);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void resultOutputTimer(String deviceId, Integer tenantId, LocalDateTime date){
|
||||||
|
//40秒没数据后输出结果
|
||||||
|
ScheduledFuture<?> future = timerMap.get(deviceId);
|
||||||
|
if (future != null && !future.isDone()) {
|
||||||
|
future.cancel(true);
|
||||||
|
future = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
future = executorService.schedule(() -> {
|
||||||
|
try {
|
||||||
|
calCycleResult(deviceId, tenantId, date);
|
||||||
|
} catch (Exception e) {
|
||||||
|
logger.error(e.toString());
|
||||||
|
}
|
||||||
|
},40, TimeUnit.SECONDS);
|
||||||
|
timerMap.put(deviceId, future);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void calCycleResult(String deviceId, Integer tenantId, LocalDateTime resultTime) {
|
||||||
FocusCalculator1 focusCalculator = calculatorMap.get(deviceId);
|
FocusCalculator1 focusCalculator = calculatorMap.get(deviceId);
|
||||||
if(focusCalculator == null) return;
|
if(focusCalculator == null) return;
|
||||||
// 1.检查b562有效数,如果过少,产生告警
|
// 1.检查b562有效数,如果过少,产生告警
|
||||||
@ -128,24 +157,6 @@ public class SingleLineGNSSCalcService implements GNSSDataCalcService {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void resultOutputTimer(String deviceId, Integer tenantId, LocalDateTime date){
|
|
||||||
//40秒没数据后输出结果
|
|
||||||
ScheduledFuture<?> future = timerMap.get(deviceId);
|
|
||||||
if (future != null && !future.isDone()) {
|
|
||||||
future.cancel(true);
|
|
||||||
future = null;
|
|
||||||
}
|
|
||||||
|
|
||||||
future = executorService.schedule(() -> {
|
|
||||||
try {
|
|
||||||
calSingleDone(deviceId, tenantId, date);
|
|
||||||
} catch (Exception e) {
|
|
||||||
logger.error(e.toString());
|
|
||||||
}
|
|
||||||
},40, TimeUnit.SECONDS);
|
|
||||||
timerMap.put(deviceId, future);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void postLocationRecord(String deviceId, double[] b562Result, double[] r9250Result, double[] result,
|
private void postLocationRecord(String deviceId, double[] b562Result, double[] r9250Result, double[] result,
|
||||||
LocalDateTime resultTime, int delay, boolean isShocked) {
|
LocalDateTime resultTime, int delay, boolean isShocked) {
|
||||||
GnssCalcData locationRecord = new GnssCalcData();
|
GnssCalcData locationRecord = new GnssCalcData();
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user