Browse Source

状态设备,持续运行时间逻辑修改

master
review512jwy@163.com 1 month ago
parent
commit
8570e6b4a1
  1. 4
      dongjian-dashboard-back-dao/src/main/resources/mappers/ex/DeviceInfoMapperExt.xml
  2. 3
      dongjian-dashboard-back-model/src/main/java/com/dongjian/dashboard/back/vo/data/DeviceBaStatusData.java
  3. 11
      dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/impl/DeviceDataBaStatusServiceImpl.java

4
dongjian-dashboard-back-dao/src/main/resources/mappers/ex/DeviceInfoMapperExt.xml

@ -200,6 +200,7 @@
bss.continuous_running_time, bss.continuous_running_time,
bss.last_start_time, bss.last_start_time,
bss.last_stop_time, bss.last_stop_time,
bss.latest_ts,
# bss.is_running runningStatus, # bss.is_running runningStatus,
4 as classId 4 as classId
<include refid="deviceDataFromAndJoin"/> <include refid="deviceDataFromAndJoin"/>
@ -221,7 +222,8 @@
bss.continuous_running_time, bss.continuous_running_time,
bss.last_start_time, bss.last_start_time,
bss.last_stop_time, bss.last_stop_time,
bss.is_running runningStatus, bss.latest_ts,
# bss.is_running runningStatus,
4 as classId 4 as classId
<include refid="deviceDataFromAndJoin"/> <include refid="deviceDataFromAndJoin"/>
left join dashboard_device_group_relation ddgr on ddgr.device_info_id = device_info.id left join dashboard_device_group_relation ddgr on ddgr.device_info_id = device_info.id

3
dongjian-dashboard-back-model/src/main/java/com/dongjian/dashboard/back/vo/data/DeviceBaStatusData.java

@ -29,4 +29,7 @@ public class DeviceBaStatusData extends BaseData{
@Schema(description = "stop/running: 0-停止, 1-运行", example = "1") @Schema(description = "stop/running: 0-停止, 1-运行", example = "1")
private Integer stopRun; private Integer stopRun;
@Schema(description = "last stop time", example = "1720000000000", hidden = true)
private String latestTs;
} }

11
dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/impl/DeviceDataBaStatusServiceImpl.java

@ -135,12 +135,12 @@ public class DeviceDataBaStatusServiceImpl implements DeviceDataBaStatusService
// 查询 favorited_device 表中所有设备的 device_id // 查询 favorited_device 表中所有设备的 device_id
List<String> favoritedDeviceIds = favoritedDeviceMapperExt.getFavoritedDeviceIds(); List<String> favoritedDeviceIds = favoritedDeviceMapperExt.getFavoritedDeviceIds();
long currentTs = System.currentTimeMillis();
for (DeviceBaStatusData data : resultList){ for (DeviceBaStatusData data : resultList){
String deviceId = data.getDeviceId().toLowerCase(); String deviceId = data.getDeviceId().toLowerCase();
String sDeviceId = deviceId85ToSMap.get(deviceId); String sDeviceId = deviceId85ToSMap.get(deviceId);
data.setContinuousRunningTimeStr(SecondsToHMSConverter.covertSeconds(data.getContinuousRunningTime()));
//处理111状态映射 //处理111状态映射
// data.setStatus111(commonOpt.buildStatus111(deviceId, deviceId85To111Map, deviceInfo111Map, realtime111Map, objectMapper)); // data.setStatus111(commonOpt.buildStatus111(deviceId, deviceId85To111Map, deviceInfo111Map, realtime111Map, objectMapper));
data.setStatus111(commonOpt.buildRawFirstValue(deviceId, deviceId85To111Map, realtime111Map, objectMapper)); data.setStatus111(commonOpt.buildRawFirstValue(deviceId, deviceId85To111Map, realtime111Map, objectMapper));
@ -159,6 +159,13 @@ public class DeviceDataBaStatusServiceImpl implements DeviceDataBaStatusService
} else { } else {
data.setStopRun(commonOpt.judgeStopRun(objectMapper, realtime85Map.get(deviceId))); data.setStopRun(commonOpt.judgeStopRun(objectMapper, realtime85Map.get(deviceId)));
} }
if (0 == data.getStopRun()) {
data.setContinuousRunningTimeStr(SecondsToHMSConverter.covertSeconds(data.getContinuousRunningTime()));
} else if (StringUtils.isNotBlank(data.getLatestTs()) && currentTs >= Long.parseLong(data.getLatestTs())) {
long diff = currentTs - Long.parseLong(data.getLatestTs());
data.setContinuousRunningTimeStr(SecondsToHMSConverter.covertSeconds(diff));
}
} }
} }

Loading…
Cancel
Save