1、基站GGA如果和d300分开上报,是有可能上报d341消息,因此在d341消息处理里要区分设备类型

This commit is contained in:
weidong 2025-03-25 23:03:14 +08:00
parent fb1b89933f
commit 9dce80fc67

View File

@ -84,7 +84,7 @@ public class D341LocationMessageExecutor implements Executor<D341LocationMessage
Gga gga = message.getGga(); Gga gga = message.getGga();
if(gga != null) { if(gga != null) {
device.updateSatelitesNum(gga.getSatellitesInUsed()); device.updateSatelitesNum(gga.getSatellitesInUsed());
if(gga.isFixed()) { if(gga.isFixed() || device.getDeviceType() == Device.DEVICE_BASE_STATION) {
device.setLatitude(gga.getLatitude()); device.setLatitude(gga.getLatitude());
device.setLongitude(gga.getLongitude()); device.setLongitude(gga.getLongitude());
device.setAltitude(gga.getAltitude()); device.setAltitude(gga.getAltitude());
@ -94,12 +94,13 @@ public class D341LocationMessageExecutor implements Executor<D341LocationMessage
} }
} }
ThreadManager.getFixedThreadPool().submit(() -> { if(device.getDeviceType() == Device.DEVICE_ROVER) {
gnssCalcService.calcSingle(message,true); ThreadManager.getFixedThreadPool().submit(() -> {
// 原始码流输出到日志文件 -- INFO 级别 gnssCalcService.calcSingle(message, true);
if(device.getLoggingmode() == GnssDevice.LOGGING_MODE_FULL){ // 原始码流输出到日志文件 -- INFO 级别
logger.info("receive {} d341 message: {}", message.getId(), DataTypeUtil.getHexString(message.getSrcData())); if (device.getLoggingmode() == GnssDevice.LOGGING_MODE_FULL) {
} logger.info("receive {} d341 message: {}", message.getId(), DataTypeUtil.getHexString(message.getSrcData()));
}
/*else { /*else {
Gga gga1 = message.getGga(); Gga gga1 = message.getGga();
if (gga1 != null && !gga1.isFixed()) { if (gga1 != null && !gga1.isFixed()) {
@ -107,7 +108,8 @@ public class D341LocationMessageExecutor implements Executor<D341LocationMessage
logger.info("receive {} d341 message: {}", message.getId(), DataTypeUtil.getHexString(message.getSrcData())); logger.info("receive {} d341 message: {}", message.getId(), DataTypeUtil.getHexString(message.getSrcData()));
} }
}*/ }*/
}); });
}
return null; return null;
} }