#优化设备下线推送
This commit is contained in:
@@ -63,10 +63,13 @@ public class SiteMemory {
|
||||
return deviceMapPushMap;
|
||||
}
|
||||
|
||||
public void saveMaPushDTO(String deviceId, DeviceMapPushDTO dto) {
|
||||
public void saveMapPushDTO(String deviceId, DeviceMapPushDTO dto) {
|
||||
deviceMapPushMap.put(deviceId, dto);
|
||||
}
|
||||
|
||||
public void removeMapPushDTO(String deviceId) {
|
||||
deviceMapPushMap.remove(deviceId);
|
||||
}
|
||||
|
||||
public void saveRunStatistics(DeviceRunStatistics deviceRunStatistics) {
|
||||
if (deviceRunStatistics != null && !StringUtils.isEmpty(deviceRunStatistics.getDeviceId())) {
|
||||
|
||||
@@ -162,14 +162,20 @@ public class HostMessageHandler implements CustomMqttMessageHandler {
|
||||
}
|
||||
|
||||
public WebStatusMessageDTO createWebDeviceLocationMessage(HostLocationRelTimeDTO locationRelTimeDTO,
|
||||
String deviceId) {
|
||||
String deviceId) {
|
||||
WebStatusMessageDTO webStatusMessageDTO = new WebStatusMessageDTO();
|
||||
List<DeviceStatusDetail> transferData = new ArrayList<>();
|
||||
|
||||
DeviceStatusDetail d = new DeviceStatusDetail();
|
||||
d.setName("deviceId");
|
||||
d.setValue(deviceId);
|
||||
d.setUnit("");
|
||||
transferData.add(d);
|
||||
|
||||
DeviceStatusDetail lat = new DeviceStatusDetail();
|
||||
lat.setName("latitude");
|
||||
lat.setValue(String.valueOf(locationRelTimeDTO.getData().getLatitude()));
|
||||
lat.setUnit("");
|
||||
|
||||
transferData.add(lat);
|
||||
|
||||
DeviceStatusDetail lng = new DeviceStatusDetail();
|
||||
@@ -228,15 +234,15 @@ public class HostMessageHandler implements CustomMqttMessageHandler {
|
||||
DeviceMapPushDTO dto = new DeviceMapPushDTO();
|
||||
dto.setA(Double.parseDouble(altitude.getValue()));
|
||||
dto.setId(deviceId);
|
||||
// dto.setB();
|
||||
// dto.setHa();
|
||||
// dto.setB();
|
||||
// dto.setHa();
|
||||
dto.setF(fix_status.getValue());
|
||||
dto.setS(status.getValue());
|
||||
dto.setLat(Double.parseDouble(lat.getValue()));
|
||||
dto.setLng(Double.parseDouble(lng.getValue()));
|
||||
dto.setT(nettyDevice.getCurrentTaskId());
|
||||
dto.setY(Double.parseDouble(yaw.getValue()));
|
||||
siteMemory.saveMaPushDTO(deviceId, dto);
|
||||
siteMemory.saveMapPushDTO(deviceId, dto);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -377,9 +383,10 @@ public class HostMessageHandler implements CustomMqttMessageHandler {
|
||||
}
|
||||
}
|
||||
}
|
||||
//todo 推送实时位置和状态消息到外部
|
||||
// todo 推送实时位置和状态消息到外部
|
||||
try {
|
||||
GlobalMemory.customMqttDeviceMonitor.publish(mqttClientId, String.format(MqttTopic.DEVICE_TASK_STATUS_TOPIC, taskId),
|
||||
GlobalMemory.customMqttDeviceMonitor.publish(mqttClientId,
|
||||
String.format(MqttTopic.DEVICE_TASK_STATUS_TOPIC, taskId),
|
||||
JsonUtils.toJsonString(sendDto));
|
||||
} catch (MqttException e) {
|
||||
// TODO Auto-generated catch block
|
||||
|
||||
Reference in New Issue
Block a user