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