1、修改贵州院UDP推送
This commit is contained in:
parent
5732629274
commit
c922252b88
@ -3,9 +3,6 @@ package com.imdroid.beidou_fwd.entity;
|
|||||||
|
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* udp数据推送 api
|
* udp数据推送 api
|
||||||
*
|
*
|
||||||
@ -16,14 +13,7 @@ public class GZYData {
|
|||||||
private String identityName;
|
private String identityName;
|
||||||
private String type = "dbwy";
|
private String type = "dbwy";
|
||||||
|
|
||||||
private List<Data> TranData;
|
private Data TranData;
|
||||||
public GZYData(){
|
|
||||||
TranData = new ArrayList<>();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void addData(Data data){
|
|
||||||
TranData.add(data);
|
|
||||||
}
|
|
||||||
|
|
||||||
@lombok.Data
|
@lombok.Data
|
||||||
public static class Data {
|
public static class Data {
|
||||||
|
|||||||
@ -17,6 +17,8 @@ public class Forwarder {
|
|||||||
Integer tenantId;
|
Integer tenantId;
|
||||||
boolean useFwdId;
|
boolean useFwdId;
|
||||||
|
|
||||||
|
static boolean isFwdTableInit = false;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private GnssDeviceMapper deviceMapper;
|
private GnssDeviceMapper deviceMapper;
|
||||||
|
|
||||||
@ -36,6 +38,11 @@ public class Forwarder {
|
|||||||
this.description = desc;
|
this.description = desc;
|
||||||
this.tenantId = tenantId;
|
this.tenantId = tenantId;
|
||||||
this.useFwdId = useFwdId;
|
this.useFwdId = useFwdId;
|
||||||
|
|
||||||
|
if(!isFwdTableInit){
|
||||||
|
isFwdTableInit = true;
|
||||||
|
fwdMapper.delete(null);
|
||||||
|
}
|
||||||
QueryWrapper<GnssGroupFwd> queryWrapper = new QueryWrapper<>();
|
QueryWrapper<GnssGroupFwd> queryWrapper = new QueryWrapper<>();
|
||||||
queryWrapper.eq("name",name);
|
queryWrapper.eq("name",name);
|
||||||
GnssGroupFwd gnssGroupFwd = fwdMapper.selectOne(queryWrapper);
|
GnssGroupFwd gnssGroupFwd = fwdMapper.selectOne(queryWrapper);
|
||||||
@ -65,6 +72,15 @@ public class Forwarder {
|
|||||||
.eq("fwd_group_id2", fwdGroupId);
|
.eq("fwd_group_id2", fwdGroupId);
|
||||||
List<GnssDevice> gnssDeviceList = deviceMapper.selectList(queryWrapper);
|
List<GnssDevice> gnssDeviceList = deviceMapper.selectList(queryWrapper);
|
||||||
List<GnssCalcData> recordsToSend;
|
List<GnssCalcData> recordsToSend;
|
||||||
|
|
||||||
|
// 查询最近半小时的记录
|
||||||
|
QueryWrapper<GnssCalcData> gnssQueryWrapper = new QueryWrapper<>();
|
||||||
|
gnssQueryWrapper.ge("createtime",sendAfterTime);
|
||||||
|
gnssQueryWrapper.orderByDesc("createtime");
|
||||||
|
gnssQueryWrapper.eq("enabled",true);
|
||||||
|
gnssQueryWrapper.isNotNull("rpose");
|
||||||
|
List<GnssCalcData> locationRecords = gnssDataMapper.selectList(gnssQueryWrapper);
|
||||||
|
|
||||||
for(GnssDevice device:gnssDeviceList){
|
for(GnssDevice device:gnssDeviceList){
|
||||||
if(device.getOpmode() != GnssDevice.OP_MODE_USE) continue;
|
if(device.getOpmode() != GnssDevice.OP_MODE_USE) continue;
|
||||||
String projectId = device.getProject_id();
|
String projectId = device.getProject_id();
|
||||||
@ -75,29 +91,23 @@ public class Forwarder {
|
|||||||
recordsToSend = new ArrayList<>();
|
recordsToSend = new ArrayList<>();
|
||||||
projects.put(projectId,recordsToSend);
|
projects.put(projectId,recordsToSend);
|
||||||
}
|
}
|
||||||
QueryWrapper<GnssCalcData> gnssQueryWrapper = new QueryWrapper<>();
|
for(GnssCalcData record:locationRecords){
|
||||||
gnssQueryWrapper.eq("deviceid",device.getDeviceid());
|
if(record.getDeviceid().equals(device.getDeviceid())) {
|
||||||
gnssQueryWrapper.ge("createtime",sendAfterTime);
|
|
||||||
gnssQueryWrapper.orderByDesc("createtime");
|
|
||||||
gnssQueryWrapper.eq("enabled",true);
|
|
||||||
gnssQueryWrapper.isNotNull("rpose");
|
|
||||||
gnssQueryWrapper.last("limit 1");
|
|
||||||
GnssCalcData record = gnssDataMapper.selectOne(gnssQueryWrapper);
|
|
||||||
if(record!=null) {
|
|
||||||
// 替换成推送用的名字和数值
|
// 替换成推送用的名字和数值
|
||||||
if(device.getIpose()!=null &&
|
if (device.getIpose() != null &&
|
||||||
device.getIposn()!=null &&
|
device.getIposn() != null &&
|
||||||
device.getIposd()!=null){
|
device.getIposd() != null) {
|
||||||
record.setRpose(record.getRpose()-device.getIpose());
|
record.setRpose(record.getRpose() - device.getIpose());
|
||||||
record.setRposn(record.getRposn()-device.getIposn());
|
record.setRposn(record.getRposn() - device.getIposn());
|
||||||
record.setRposd(record.getRposd()-device.getIposd());
|
record.setRposd(record.getRposd() - device.getIposd());
|
||||||
}
|
}
|
||||||
if(useFwdId && device.getFwddeviceid()!=null && device.getFwddeviceid().trim().length()>0) {
|
if (useFwdId && device.getFwddeviceid() != null && device.getFwddeviceid().trim().length() > 0) {
|
||||||
record.setDeviceid(device.getFwddeviceid());
|
record.setDeviceid(device.getFwddeviceid());
|
||||||
}
|
}
|
||||||
recordsToSend.add(record);
|
recordsToSend.add(record);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 按项目打包推送
|
// 按项目打包推送
|
||||||
int totalSendNum = 0;
|
int totalSendNum = 0;
|
||||||
|
|||||||
@ -40,7 +40,7 @@ public class GZYForwarder extends Forwarder{
|
|||||||
/**
|
/**
|
||||||
* 每半小时转发GNSS解算结果
|
* 每半小时转发GNSS解算结果
|
||||||
*/
|
*/
|
||||||
@Scheduled(cron = "0 0/30 * * * ?") // 每30分钟执行一次
|
@Scheduled(cron = "0 0/5 * * * ?") // 每30分钟执行一次
|
||||||
private void forwardGnss() {
|
private void forwardGnss() {
|
||||||
forwardCurrentGnss(FORWARDER_NAME);
|
forwardCurrentGnss(FORWARDER_NAME);
|
||||||
}
|
}
|
||||||
@ -67,9 +67,8 @@ public class GZYForwarder extends Forwarder{
|
|||||||
tranData.setX(n);
|
tranData.setX(n);
|
||||||
tranData.setY(e);
|
tranData.setY(e);
|
||||||
tranData.setZ(d);
|
tranData.setZ(d);
|
||||||
gzyData.addData(tranData);
|
gzyData.setTranData(tranData);
|
||||||
String json = GsonUtil.toJson(gzyData);
|
String msg = "JGKJ" + GsonUtil.toJson(gzyData) + "#!";
|
||||||
String msg = "JGKJ" + json + "#!";
|
|
||||||
logger.info("forward to GZY");
|
logger.info("forward to GZY");
|
||||||
logger.info(msg);
|
logger.info(msg);
|
||||||
udpClient.sendMessage(msg);
|
udpClient.sendMessage(msg);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user