From 0323a1a06830774bb9e77caa33371527370814ca Mon Sep 17 00:00:00 2001
From: Lius <Lius2225@163.com>
Date: 星期一, 12 五月 2025 09:01:37 +0800
Subject: [PATCH] 分级看板接口

---
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcBoardServiceImpl.java |  123 +++++++++++++++++++++++++++++++++++++++-
 1 files changed, 119 insertions(+), 4 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..30a4fe8 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
@@ -3,14 +3,20 @@
 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.common.util.TranslateDictTextUtils;
+import org.jeecg.modules.eam.constant.EquipmentMaintenanceStatus;
+import org.jeecg.modules.eam.constant.EquipmentOperationTagEnum;
+import org.jeecg.modules.eam.constant.EquipmentRepairStatus;
+import org.jeecg.modules.eam.constant.MaintenanceCategoryEnum;
 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.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 +56,18 @@
 
     @Resource
     private IMdcJcRcJobreportService mdcJcRcJobreportService;
+
+    @Resource
+    private CommonAPI commonAPI;
+
+    @Resource
+    private IEquipmentLogService equipmentLogService;
+
+    @Resource
+    private IEquipmentWorkLineService equipmentWorkLineService;
+
+    @Resource
+    private MdcBoardMapper mdcBoardMapper;
 
     /**
      * 璁惧鐘舵��
@@ -280,4 +298,101 @@
         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.getOporation() != null) {
+            switch (mdcBoardEquRealTImeVo.getOporation()) {
+                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.setOporation(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 ? "" : object.toString());
+            }
+            if (mapData.containsKey("spindlespeed")) {
+                Object object = mapData.get("spindlespeed");
+                mdcBoardEquRealTImeVo.setSpindleSpeed(object == null ? "" : object.toString());
+            }
+            if (mapData.containsKey("spindleload")) {
+                Object object = mapData.get("spindleload");
+                mdcBoardEquRealTImeVo.setSpindleLoad(object == null ? "" : object.toString());
+            }
+            if (mapData.containsKey("spindlebeilv")) {
+                Object object = mapData.get("spindlebeilv");
+                mdcBoardEquRealTImeVo.setSpindlebeilv(object == null ? "" : object.toString());
+            }
+            if (mapData.containsKey("feedbeilv")) {
+                Object object = mapData.get("feedbeilv");
+                mdcBoardEquRealTImeVo.setFeedbeilv(object == null ? "" : 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("鏃�");
+        }
+        // 涓嬫鐐规涓嬫淇濆吇
+        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