增加经纬度记录
This commit is contained in:
parent
f9be86382b
commit
11cf68fbf6
@ -46,4 +46,7 @@ public class GnssStatus {
|
||||
Integer warningcode;
|
||||
Short warning;
|
||||
Integer noreslutcount;
|
||||
Double latitude;
|
||||
Double longitude;
|
||||
Double altitude;
|
||||
}
|
||||
|
||||
@ -58,12 +58,17 @@ public class D331RtcmMessageExecutor implements Executor<D331RtcmMessage, Void>
|
||||
Gga gga = message.getGga();
|
||||
if(gga != null) {
|
||||
device1.updateSatelitesNum(gga.getSatellitesInUsed());
|
||||
logger.info(message.getId()+
|
||||
if(gga.getQuality()>0 && gga.getQuality()<6) {
|
||||
device1.setLatitude(gga.getLatitude());
|
||||
device1.setLongitude(gga.getLongitude());
|
||||
device1.setAltitude(gga.getAltitude());
|
||||
}
|
||||
/*logger.info(message.getId()+
|
||||
" lat: "+gga.getLatitude()+
|
||||
" lon:"+gga.getLongitude()+
|
||||
" alt: "+gga.getAltitude()+
|
||||
" sat: "+gga.getSatellitesInUsed()+
|
||||
" quality: "+gga.getQuality());
|
||||
" quality: "+gga.getQuality());*/
|
||||
}
|
||||
|
||||
return null;
|
||||
|
||||
@ -40,6 +40,11 @@ public class D341LocationMessageExecutor implements Executor<D341LocationMessage
|
||||
Gga gga = message.getGga();
|
||||
if(gga != null) {
|
||||
device.updateSatelitesNum(gga.getSatellitesInUsed());
|
||||
if(gga.getQuality()>0 && gga.getQuality()<6) {
|
||||
device.setLatitude(gga.getLatitude());
|
||||
device.setLongitude(gga.getLongitude());
|
||||
device.setAltitude(gga.getAltitude());
|
||||
}
|
||||
}
|
||||
|
||||
ThreadManager.getFixedThreadPool().submit(() -> {
|
||||
|
||||
@ -56,7 +56,7 @@ public class D3F2StopIndicationMessageExecutor implements Executor<D3F2StopIndic
|
||||
ThreadManager.getFixedThreadPool().submit(() -> {
|
||||
LocalDateTime uploadTime = multiLineGNSSCalcService.checkUploadTime(
|
||||
device.getDeviceId(), device.getTenantId());
|
||||
dataPersistService.saveDeviceTrxStat(message, (uploadTime!=null), device.getSatelitesInUse());
|
||||
dataPersistService.saveDeviceTrxStat(message, (uploadTime!=null), device);
|
||||
// 通知beidou服务设备休眠
|
||||
beidouClient.onDeviceStop(deviceId,device.getTenantId());
|
||||
if(uploadTime!=null){
|
||||
|
||||
@ -41,6 +41,10 @@ public class Device {
|
||||
int d341bytes = 0;
|
||||
int satelitesInUse = 0;
|
||||
|
||||
Double latitude;
|
||||
Double longitude;
|
||||
Double altitude;
|
||||
|
||||
public void updateD331Bytes(int bytes){
|
||||
d3xxCount++;
|
||||
d3xxbytes += bytes;
|
||||
|
||||
@ -3,6 +3,7 @@ package com.imdroid.sideslope.service;
|
||||
import com.imdroid.secapi.dto.GnssStatus;
|
||||
import com.imdroid.sideslope.message.D3F0SelfCheckMessage;
|
||||
import com.imdroid.sideslope.message.D3F2StopIndicationMessage;
|
||||
import com.imdroid.sideslope.sal.Device;
|
||||
|
||||
/**
|
||||
* 设备数据持久化接口,保存:
|
||||
@ -17,7 +18,6 @@ public interface DataPersistService {
|
||||
GnssStatus getDeviceState(String deviceId);
|
||||
void updateDeviceState(GnssStatus gnssStatus);
|
||||
void saveDeviceState(D3F0SelfCheckMessage d3F0SelfCheckMessage);
|
||||
|
||||
void saveDeviceTrxStat(D3F2StopIndicationMessage d3F2StopIndicationMessage,boolean isUploading,int satelitesNum);
|
||||
void saveDeviceTrxStat(D3F2StopIndicationMessage d3F2StopIndicationMessage, boolean isUploading, Device device);
|
||||
|
||||
}
|
||||
|
||||
@ -4,6 +4,7 @@ import com.imdroid.secapi.dto.*;
|
||||
import com.imdroid.sideslope.message.BaseMessage;
|
||||
import com.imdroid.sideslope.message.D3F0SelfCheckMessage;
|
||||
import com.imdroid.sideslope.message.D3F2StopIndicationMessage;
|
||||
import com.imdroid.sideslope.sal.Device;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@ -86,7 +87,7 @@ public class DataPersistServiceImpl implements DataPersistService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void saveDeviceTrxStat(D3F2StopIndicationMessage message, boolean isUploading,int satelitesNum) {
|
||||
public void saveDeviceTrxStat(D3F2StopIndicationMessage message, boolean isUploading, Device device) {
|
||||
try {
|
||||
// 添加到trxmsg里
|
||||
GnssTrxMsg trxMsg = message.getTrxMsg();
|
||||
@ -104,7 +105,10 @@ public class DataPersistServiceImpl implements DataPersistService {
|
||||
deviceState.setRxbytes(rxbytes);*/
|
||||
deviceState.setD3xxbytes(trxMsg.getD3xxbytes());
|
||||
deviceState.setB562bytes(trxMsg.getB562bytes());
|
||||
deviceState.setSatelliteinuse(satelitesNum);
|
||||
deviceState.setSatelliteinuse(device.getSatelitesInUse());
|
||||
deviceState.setLatitude(device.getLatitude());
|
||||
deviceState.setLongitude(device.getLongitude());
|
||||
deviceState.setAltitude(device.getAltitude());
|
||||
deviceState.setState(isUploading?GnssStatus.STATE_UPLOADING:GnssStatus.STATE_IDLE);
|
||||
deviceStateRepository.updateById(deviceState);
|
||||
}
|
||||
|
||||
@ -111,7 +111,7 @@ CREATE TABLE IF NOT EXISTS `gnssstatus` (
|
||||
`voltage` int DEFAULT 0,
|
||||
`temperature` float DEFAULT 0,
|
||||
`humidity` float DEFAULT 0,
|
||||
`satelliteinuse` float DEFAULT 0,
|
||||
`satelliteinuse` int DEFAULT 0,
|
||||
`txbytes` int DEFAULT 0,
|
||||
`rxbytes` int DEFAULT 0,
|
||||
`b562bytes` int DEFAULT 0,
|
||||
@ -120,6 +120,9 @@ CREATE TABLE IF NOT EXISTS `gnssstatus` (
|
||||
`warningcode` int DEFAULT 0,
|
||||
`warning` smallint DEFAULT 0,
|
||||
`noreslutcount` int DEFAULT 0,
|
||||
`latitude` double DEFAULT NULL,
|
||||
`longitude` double DEFAULT NULL,
|
||||
`altitude` double DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user