diff --git a/imt-server/imt-module-system/imt-module-system-biz/src/main/java/com/inspur/module/system/service/equip/EquipDashboardServiceImpl.java b/imt-server/imt-module-system/imt-module-system-biz/src/main/java/com/inspur/module/system/service/equip/EquipDashboardServiceImpl.java index 061c121..b741b9f 100644 --- a/imt-server/imt-module-system/imt-module-system-biz/src/main/java/com/inspur/module/system/service/equip/EquipDashboardServiceImpl.java +++ b/imt-server/imt-module-system/imt-module-system-biz/src/main/java/com/inspur/module/system/service/equip/EquipDashboardServiceImpl.java @@ -67,15 +67,17 @@ public class EquipDashboardServiceImpl implements EquipDashboardService{ vo.setAlarmNum(alarmNum); if(Objects.nonNull(equipInfoDO.getRunStatus()) && equipInfoDO.getRunStatus() != 2) { - //获取工作数据、 + //获取工作数据 Map latestDataMap = dataQueryApi.getLatestFanucData(vo.getEquipId()); Map oldestDataMap = dataQueryApi.getOldestFanucData(vo.getEquipId()); if (CollUtil.isNotEmpty(latestDataMap) && CollUtil.isNotEmpty(oldestDataMap)) { vo.setPowerTime(Double.parseDouble(latestDataMap.get("power_time").toString()) / 60.0); vo.setWorkTime(Double.parseDouble(latestDataMap.get("work_time").toString()) / 60.0); vo.setProcessNum((int) Double.parseDouble(latestDataMap.get("process_num").toString())); - vo.setTodayWorkTime((Double.parseDouble(latestDataMap.get("work_time").toString()) - Double.parseDouble(oldestDataMap.get("work_time").toString())) / 60.0); - vo.setTodayProcessNum((int) (Double.parseDouble(latestDataMap.get("process_num").toString()) - Double.parseDouble(oldestDataMap.get("process_num").toString()))); + double todayWorkTime = (Double.parseDouble(latestDataMap.get("work_time").toString()) - Double.parseDouble(oldestDataMap.get("work_time").toString())) / 60.0; + int todayProcessNum = (int) (Double.parseDouble(latestDataMap.get("process_num").toString()) - Double.parseDouble(oldestDataMap.get("process_num").toString())); + vo.setTodayWorkTime(todayWorkTime < 0 ? Double.parseDouble(latestDataMap.get("work_time").toString()) : todayWorkTime); + vo.setTodayProcessNum(todayProcessNum < 0 ? (int) Double.parseDouble(latestDataMap.get("process_num").toString()) : todayProcessNum); vo.setTodayEfficiency(vo.getTodayProcessNum() / vo.getTodayWorkTime()); } }else{//维修状态