From d21d6d9c777f794c1fbbe0106bf22b4def58b6da Mon Sep 17 00:00:00 2001
From: cuilei <ray_tsu1@163.com>
Date: 星期五, 27 六月 2025 16:31:47 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcBoardServiceImpl.java |  133 ++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 126 insertions(+), 7 deletions(-)

diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcBoardServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcBoardServiceImpl.java
index 468d909..8543ae1 100644
--- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcBoardServiceImpl.java
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcBoardServiceImpl.java
@@ -2,15 +2,17 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
-import com.sun.org.apache.bcel.internal.generic.NEW;
+import org.jeecg.common.api.CommonAPI;
 import org.jeecg.common.constant.CommonConstant;
-import org.jeecg.modules.mdc.constant.MdcConstant;
-import org.jeecg.modules.mdc.entity.Equipment;
-import org.jeecg.modules.mdc.entity.MdcEquipment;
-import org.jeecg.modules.mdc.entity.MdcEquipmentStatisticalInfo;
-import org.jeecg.modules.mdc.entity.MdcOeeInfo;
+import org.jeecg.modules.eam.constant.EquipmentMaintenanceStatus;
+import org.jeecg.modules.eam.constant.EquipmentRepairStatus;
+import org.jeecg.modules.eam.constant.MaintenanceCategoryEnum;
+import org.jeecg.modules.mdc.dto.EamEquipmentExtendDto;
+import org.jeecg.modules.mdc.entity.*;
+import org.jeecg.modules.mdc.mapper.MdcBoardMapper;
 import org.jeecg.modules.mdc.service.*;
 import org.jeecg.modules.mdc.util.DateUtils;
+import org.jeecg.modules.mdc.vo.MdcBoardEquRealTImeVo;
 import org.jeecg.modules.mdc.vo.MdcBoardRateVo;
 import org.jeecg.modules.mdc.vo.MdcEquipmentStatusVo;
 import org.jeecg.modules.mdcJc.service.IMdcJcRcJobreportService;
@@ -50,6 +52,21 @@
 
     @Resource
     private IMdcJcRcJobreportService mdcJcRcJobreportService;
+
+    @Resource
+    private CommonAPI commonAPI;
+
+    @Resource
+    private IEquipmentLogService equipmentLogService;
+
+    @Resource
+    private IEquipmentWorkLineService equipmentWorkLineService;
+
+    @Resource
+    private MdcBoardMapper mdcBoardMapper;
+
+    @Resource
+    private IMdcDeviceCalendarService mdcDeviceCalendarService;
 
     /**
      * 璁惧鐘舵��
@@ -154,7 +171,7 @@
                         mdcBoardRateVo.setOpenRate(equipmentStatisticalInfo.getOpenLong().divide(new BigDecimal("864"), 2, RoundingMode.HALF_UP));
                     }
                     if (equipmentStatisticalInfo.getOpenLong().compareTo(BigDecimal.ZERO) > 0) {
-                        mdcBoardRateVo.setStartRate(equipmentStatisticalInfo.getProcessLong().multiply(new BigDecimal("100").divide(equipmentStatisticalInfo.getOpenLong(), 2, RoundingMode.HALF_UP)));
+                        mdcBoardRateVo.setStartRate(equipmentStatisticalInfo.getProcessLong().multiply(new BigDecimal("100")).divide(equipmentStatisticalInfo.getOpenLong(), 2, RoundingMode.HALF_UP));
                     }
                     statisticsMap.put(date, mdcBoardRateVo);
                 }
@@ -280,4 +297,106 @@
         return result;
     }
 
+    /**
+     * 璁惧瀹炴椂淇℃伅
+     */
+    @Override
+    public MdcBoardEquRealTImeVo equipmentRealTimeDetail(String equipmentId) {
+        MdcBoardEquRealTImeVo mdcBoardEquRealTImeVo = mdcEquipmentService.getByEquipmentId(equipmentId);
+        if (mdcBoardEquRealTImeVo == null) {
+            return new MdcBoardEquRealTImeVo();
+        }
+        //璁惧绠$悊鍛樼炕璇�
+        String realName = commonAPI.translateDictFromTable("sys_user", "realname", "username", mdcBoardEquRealTImeVo.getEquipmentManager());
+        mdcBoardEquRealTImeVo.setEquipmentManager(realName);
+        mdcBoardEquRealTImeVo.setAlarm("鏃�");
+        if (mdcBoardEquRealTImeVo.getOperation() != null) {
+            switch (mdcBoardEquRealTImeVo.getOperation()) {
+                case 1:
+                case 2:
+                    mdcBoardEquRealTImeVo.setOporationDict("寰呮満");
+                    break;
+                case 3:
+                    mdcBoardEquRealTImeVo.setOporationDict("杩愯");
+                    break;
+                case 22:
+                    mdcBoardEquRealTImeVo.setOporationDict("鎶ヨ");
+                    // 鏌ヨ鎶ヨ鍙�
+                    EquipmentLog equipmentLog = equipmentLogService.findAlarmByEquId(equipmentId);
+                    if (equipmentLog != null && StringUtils.isNotBlank(equipmentLog.getAlarm())) {
+                        mdcBoardEquRealTImeVo.setAlarm(equipmentLog.getAlarm());
+                    }
+                    break;
+                default:
+                    mdcBoardEquRealTImeVo.setOporationDict("鍏虫満");
+                    break;
+            }
+        } else {
+            mdcBoardEquRealTImeVo.setOporationDict("鍏虫満");
+            mdcBoardEquRealTImeVo.setOperation(0);
+        }
+        //璁惧杩愯鏁版嵁
+        Map<String, Object> mapData = equipmentWorkLineService.getDataList(mdcBoardEquRealTImeVo.getSaveTableName());
+        if (mapData != null) {
+            if (mapData.containsKey("Sequencenumber")) {
+                Object object = mapData.get("Sequencenumber");
+                mdcBoardEquRealTImeVo.setSequenceNumber(object == null || "鍏虫満".equals(mdcBoardEquRealTImeVo.getOporationDict()) ? "" : object.toString());
+            }
+            if (mapData.containsKey("actualspindlespeed")) {
+                Object object = mapData.get("actualspindlespeed");
+                mdcBoardEquRealTImeVo.setSpindleSpeed(object == null || "鍏虫満".equals(mdcBoardEquRealTImeVo.getOporationDict()) ? "" : object.toString());
+            }
+            if (mapData.containsKey("spindleload")) {
+                Object object = mapData.get("spindleload");
+                mdcBoardEquRealTImeVo.setSpindleLoad(object == null || "鍏虫満".equals(mdcBoardEquRealTImeVo.getOporationDict()) ? "" : object.toString());
+            }
+            if (mapData.containsKey("spindlebeilv")) {
+                Object object = mapData.get("spindlebeilv");
+                mdcBoardEquRealTImeVo.setSpindlebeilv(object == null || "鍏虫満".equals(mdcBoardEquRealTImeVo.getOporationDict()) ? "" : object.toString());
+            }
+            if (mapData.containsKey("feedbeilv")) {
+                Object object = mapData.get("feedbeilv");
+                mdcBoardEquRealTImeVo.setFeedbeilv(object == null || "鍏虫満".equals(mdcBoardEquRealTImeVo.getOporationDict()) ? "" : object.toString());
+            }
+        }
+        // 缁翠繚鐘舵��
+        EamEquipmentExtendDto eamEquipmentExtendDto = mdcBoardMapper.findEquExtend(equipmentId);
+        mdcBoardEquRealTImeVo.setMaintenanceStatus("姝e父");
+        mdcBoardEquRealTImeVo.setReportRepairStatus("鏃�");
+        if (eamEquipmentExtendDto != null) {
+            if (!EquipmentRepairStatus.NORMAL.name().equals(eamEquipmentExtendDto.getRepairStatus())) {
+                mdcBoardEquRealTImeVo.setMaintenanceStatus("缁翠慨");
+            } else {
+                if (EquipmentMaintenanceStatus.UNDER_INSPECTION.name().equals(eamEquipmentExtendDto.getMaintenanceStatus()) || EquipmentMaintenanceStatus.INSPECTION_CONFIRM.name().equals(eamEquipmentExtendDto.getMaintenanceStatus())) {
+                    mdcBoardEquRealTImeVo.setMaintenanceStatus("鐐规");
+                } else if (EquipmentMaintenanceStatus.UNDER_MAINTENANCE.name().equals(eamEquipmentExtendDto.getMaintenanceStatus()) || EquipmentMaintenanceStatus.WAIT_CONFIRM.name().equals(eamEquipmentExtendDto.getMaintenanceStatus())) {
+                    mdcBoardEquRealTImeVo.setMaintenanceStatus("鍛ㄦ姤");
+                }
+            }
+        }
+        // 鎶ヤ慨鎯呭喌
+        String repairStatus =  mdcBoardMapper.findReportRepairStatus(equipmentId);
+        if (repairStatus != null) {
+            String reportRepair = commonAPI.translateDict("report_repair_status", repairStatus);
+            mdcBoardEquRealTImeVo.setReportRepairStatus(reportRepair);
+        } else {
+            mdcBoardEquRealTImeVo.setReportRepairStatus("鏃�");
+        }
+        // 鐝
+        String shift = mdcDeviceCalendarService.findShiftByEquId(equipmentId);
+        if (StringUtils.isNotBlank(shift)) {
+            mdcBoardEquRealTImeVo.setShift(shift);
+        }
+        // 鐐规  淇濆吇
+        Date nextInspection = mdcBoardMapper.findInsOrMain(equipmentId, MaintenanceCategoryEnum.POINT_INSPECTION.name());
+        if (nextInspection != null) {
+            mdcBoardEquRealTImeVo.setNextInspection(nextInspection);
+        }
+        Date nextMaintenance = mdcBoardMapper.findInsOrMain(equipmentId, MaintenanceCategoryEnum.WEEK_MAINTENANCE.name());
+        if (nextMaintenance != null) {
+            mdcBoardEquRealTImeVo.setNextMaintenance(nextMaintenance);
+        }
+        return mdcBoardEquRealTImeVo;
+    }
+
 }

--
Gitblit v1.9.3