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/dto/EamEquipmentExtendDto.java                   |   21 +++
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcBoardMapper.java                       |   20 ++
 lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentMapper.java            |    7 
 lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentMapper.xml         |   13 +
 lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/IEquipmentLogService.java         |    2 
 lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/vo/MdcBoardEquRealTImeVo.java             |   89 ++++++++++++
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcBoardController.java               |   13 -
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentLogServiceImpl.java        |    5 
 lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java |    5 
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentLogMapper.java                   |    2 
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentLogMapper.xml                |    4 
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcBoardMapper.xml                    |   41 +++++
 lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentService.java         |    7 
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcBoardService.java                    |   10 
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcBoardServiceImpl.java            |  123 +++++++++++++++++
 15 files changed, 335 insertions(+), 27 deletions(-)

diff --git a/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentMapper.java b/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentMapper.java
index 2446556..f841eeb 100644
--- a/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentMapper.java
+++ b/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentMapper.java
@@ -12,10 +12,7 @@
 import org.jeecg.modules.mdc.dto.MdcEquipmentDto;
 import org.jeecg.modules.mdc.entity.MdcEquipment;
 import org.jeecg.modules.mdc.entity.MdcEquipmentMonitor;
-import org.jeecg.modules.mdc.vo.MdcEquipmentDepVo;
-import org.jeecg.modules.mdc.vo.MdcEquipmentProVo;
-import org.jeecg.modules.mdc.vo.MdcEquipmentVo;
-import org.jeecg.modules.mdc.vo.WorkshopEquipmentVo;
+import org.jeecg.modules.mdc.vo.*;
 
 import java.util.List;
 import java.util.Map;
@@ -139,4 +136,6 @@
     List<String> getEquIdsByProIds(@Param("proIds") List<String> proIds);
 
     List<MdcEquipment> findByProIds(@Param("proIds") List<String> proIds);
+
+    MdcBoardEquRealTImeVo getByEquipmentId(@Param("equipmentId") String equipmentId);
 }
diff --git a/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentMapper.xml b/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentMapper.xml
index 8dbe98e..66e6ef5 100644
--- a/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentMapper.xml
+++ b/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentMapper.xml
@@ -368,4 +368,17 @@
         </where>
     </select>
 
+    <select id="getByEquipmentId" resultType="org.jeecg.modules.mdc.vo.MdcBoardEquRealTImeVo">
+        SELECT
+            t1.*,
+            t2.equipment_manager equipmentManager,
+            t2.installation_position installationPosition,
+            t3.oporation operation
+        FROM
+            mdc_equipment t1
+                LEFT JOIN eam_equipment t2 ON t1.equipment_id = t2.equipment_code
+                LEFT JOIN Equipment t3 ON t1.equipment_id = t3.EquipmentID
+        WHERE t1.equipment_id = #{equipmentId}
+    </select>
+
 </mapper>
diff --git a/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/IEquipmentLogService.java b/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/IEquipmentLogService.java
index 805e454..84a22ae 100644
--- a/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/IEquipmentLogService.java
+++ b/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/IEquipmentLogService.java
@@ -30,4 +30,6 @@
     EquipmentLog selectEquipmentOporation(String equipmentId);
 
     List<EquipmentLog> getEquipmentStatusList(List<String> equipmentIdList);
+
+    EquipmentLog findAlarmByEquId(String equipmentId);
 }
diff --git a/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentService.java b/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentService.java
index 76ddd1d..c3c9548 100644
--- a/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentService.java
+++ b/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentService.java
@@ -9,10 +9,7 @@
 import org.jeecg.modules.mdc.entity.MdcEquipment;
 import org.jeecg.modules.mdc.entity.MdcEquipmentMonitor;
 import org.jeecg.modules.mdc.model.MdcEquipmentTree;
-import org.jeecg.modules.mdc.vo.MdcEfficiencyReportQueryVo;
-import org.jeecg.modules.mdc.vo.MdcEfficiencyReportShiftQueryVo;
-import org.jeecg.modules.mdc.vo.MdcEquipmentVo;
-import org.jeecg.modules.mdc.vo.WorkshopEquipmentVo;
+import org.jeecg.modules.mdc.vo.*;
 
 import javax.servlet.http.HttpServletRequest;
 import java.util.List;
@@ -243,4 +240,6 @@
     List<String> getEquIdsByProIds(List<String> proIds);
 
     List<MdcEquipment> findByProIds(List<String> proIds);
+
+    MdcBoardEquRealTImeVo getByEquipmentId(String equipmentId);
 }
diff --git a/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java b/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java
index 5f44a71..b479291 100644
--- a/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java
+++ b/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java
@@ -1052,4 +1052,9 @@
         return this.baseMapper.findByProIds(proIds);
     }
 
+    @Override
+    public MdcBoardEquRealTImeVo getByEquipmentId(String equipmentId) {
+        return this.baseMapper.getByEquipmentId(equipmentId);
+    }
+
 }
diff --git a/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/vo/MdcBoardEquRealTImeVo.java b/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/vo/MdcBoardEquRealTImeVo.java
new file mode 100644
index 0000000..fbdf7a3
--- /dev/null
+++ b/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/vo/MdcBoardEquRealTImeVo.java
@@ -0,0 +1,89 @@
+package org.jeecg.modules.mdc.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.jeecg.modules.mdc.entity.MdcEquipment;
+
+import java.util.Date;
+
+/**
+ * @Author: Lius
+ * @CreateTime: 2025-05-08
+ * @Description: 璁惧瀹炴椂淇℃伅
+ */
+@Data
+@ApiModel(value = "鐪嬫澘璁惧瀹炴椂淇℃伅杩斿洖瀵硅薄", description = "鐪嬫澘璁惧瀹炴椂淇℃伅")
+public class MdcBoardEquRealTImeVo extends MdcEquipment {
+
+    /**
+     * 璁惧绠$悊鍛�
+     */
+    @ApiModelProperty(value = "璁惧绠$悊鍛�")
+    private String equipmentManager;
+    /**
+     * 瀹夎浣嶇疆
+     */
+    @ApiModelProperty(value = "瀹夎浣嶇疆")
+    private String installationPosition;
+    /**
+     * 鍔犲伐绋嬪簭
+     */
+    @ApiModelProperty(value = "鍔犲伐绋嬪簭")
+    private String sequenceNumber;
+    /**
+     * 涓昏酱杞��
+     */
+    @ApiModelProperty(value = "涓昏酱杞��")
+    private String spindleSpeed;
+    /**
+     * 涓昏酱璐熻浇
+     */
+    @ApiModelProperty(value = "涓昏酱璐熻浇")
+    private String spindleLoad;
+    /**
+     * 涓昏酱鍊嶇巼
+     */
+    @ApiModelProperty(value = "涓昏酱鍊嶇巼")
+    private String spindlebeilv;
+    /**
+     * 杩涚粰鍊嶇巼
+     */
+    @ApiModelProperty(value = "杩涚粰鍊嶇巼")
+    private String feedbeilv;
+    /**
+     * 鐝
+     */
+    @ApiModelProperty(value = "鐝")
+    private String shift;
+    /**
+     * 鎶ヤ慨鎯呭喌
+     */
+    @ApiModelProperty(value = "鎶ヤ慨鎯呭喌")
+    private String reportRepairStatus;
+    /**
+     * 涓嬫鐐规
+     */
+    @ApiModelProperty(value = "涓嬫鐐规")
+    private Date nextInspection;
+    /**
+     * 涓嬫淇濆吇
+     */
+    @ApiModelProperty(value = "涓嬫淇濆吇")
+    private Date nextMaintenance;
+    /**
+     * 璁惧鐘舵��
+     */
+    @ApiModelProperty(value = "璁惧鐘舵��")
+    private Integer operation;
+    /**
+     * 璁惧瀹炴椂鐘舵�佸瓧鍏�
+     */
+    @ApiModelProperty(value = "璁惧瀹炴椂鐘舵�佸瓧鍏�")
+    private String oporationDict;
+    /**
+     * 缁翠繚鐘舵��
+     */
+    @ApiModelProperty(value = "缁翠繚鐘舵��")
+    private String maintenanceStatus;
+}
diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcBoardController.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcBoardController.java
index 6285356..dd72f20 100644
--- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcBoardController.java
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcBoardController.java
@@ -6,6 +6,7 @@
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.modules.mdc.entity.MdcEquipment;
 import org.jeecg.modules.mdc.service.IMdcBoardService;
+import org.jeecg.modules.mdc.vo.MdcBoardEquRealTImeVo;
 import org.jeecg.modules.system.entity.MdcProduction;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -75,19 +76,9 @@
     @ApiOperation(value = "MDC鐪嬫澘鎺ュ彛-璁惧杩愯鐘舵�佸強杩愯鍙傛暟淇℃伅", notes = "MDC鐪嬫澘鎺ュ彛-璁惧杩愯鐘舵�佸強杩愯鍙傛暟淇℃伅")
     @GetMapping("/equipmentRealTimeDetail")
     public Result<?> equipmentRealTimeDetail(@RequestParam(name = "equipmentId", required = true) String equipmentId) {
-        Map<String, Object> result = mdcBoardService.rateAnalysisTrendMonth(equipmentId);
+        MdcBoardEquRealTImeVo result = mdcBoardService.equipmentRealTimeDetail(equipmentId);
         return Result.OK(result);
     }
-
-//    @ApiOperation(value = "MDC棣栭〉鎺ュ彛-璁惧浜у搧鍚堟牸鐜�", notes = "MDC棣栭〉鎺ュ彛-璁惧浜у搧鍚堟牸鐜�")
-//    @GetMapping("/passRate")
-//    public Result<?> passRate(@RequestParam(name = "equipmentId", required = true) String equipmentId) {
-//        Map<String, Object> result = mdcBoardService.passRate(equipmentId);
-//        return Result.OK(result);
-//    }
-
-
-
 
 
 }
diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/dto/EamEquipmentExtendDto.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/dto/EamEquipmentExtendDto.java
new file mode 100644
index 0000000..7563e59
--- /dev/null
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/dto/EamEquipmentExtendDto.java
@@ -0,0 +1,21 @@
+package org.jeecg.modules.mdc.dto;
+
+import lombok.Data;
+
+/**
+ * @Author: Lius
+ * @CreateTime: 2025-05-09
+ * @Description: 缁翠繚鐘舵��
+ */
+@Data
+public class EamEquipmentExtendDto {
+
+    /**
+     * 淇濆吇鐘舵��
+     */
+    private String maintenanceStatus;
+    /**
+     * 缁翠慨鐘舵��
+     */
+    private String repairStatus;
+}
diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentLogMapper.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentLogMapper.java
index 69d4c80..4ce3c9c 100644
--- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentLogMapper.java
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentLogMapper.java
@@ -19,4 +19,6 @@
     EquipmentLog selectEquipmentOporation(@Param("equipmentId") String equipmentId);
 
     List<EquipmentLog> getEquipmentStatusList(@Param("equipmentIdList") List<String> equipmentIdList);
+
+    EquipmentLog findAlarmByEquId(@Param("equipmentId") String equipmentId);
 }
diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcBoardMapper.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcBoardMapper.java
new file mode 100644
index 0000000..01a4484
--- /dev/null
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcBoardMapper.java
@@ -0,0 +1,20 @@
+package org.jeecg.modules.mdc.mapper;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.mdc.dto.EamEquipmentExtendDto;
+
+import java.util.Date;
+
+/**
+ * @Author: Lius
+ * @CreateTime: 2025-05-09
+ * @Description:
+ */
+public interface MdcBoardMapper {
+
+    EamEquipmentExtendDto findEquExtend(@Param("equipmentId") String equipmentId);
+
+    String findReportRepairStatus(@Param("equipmentId") String equipmentId);
+
+    Date findInsOrMain(@Param("equipmentId") String equipmentId, @Param("category") String category);
+}
diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentLogMapper.xml b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentLogMapper.xml
index 88b331d..1514c2a 100644
--- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentLogMapper.xml
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentLogMapper.xml
@@ -25,4 +25,8 @@
             </foreach>
         </if>
     </select>
+
+    <select id="findAlarmByEquId" resultType="org.jeecg.modules.mdc.entity.EquipmentLog">
+        SELECT TOP 1 * FROM EquipmentLog WHERE EquipmentID = #{ equipmentId } AND Oporation = '22' AND Alarm != '' ORDER BY CollectTime DESC
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcBoardMapper.xml b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcBoardMapper.xml
new file mode 100644
index 0000000..8005ec2
--- /dev/null
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcBoardMapper.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.mdc.mapper.MdcBoardMapper">
+
+    <select id="findEquExtend" resultType="org.jeecg.modules.mdc.dto.EamEquipmentExtendDto">
+        SELECT
+            t2.maintenance_status maintenanceStatus,
+            t2.repair_status repairStatus
+        FROM
+            eam_equipment t1
+                LEFT JOIN eam_equipment_extend t2 ON t1.id = t2.id
+        WHERE
+            t1.equipment_code = #{equipmentId}
+    </select>
+
+    <select id="findReportRepairStatus" resultType="java.lang.String">
+        SELECT TOP
+            1 report_status
+        FROM
+            eam_report_repair t1
+                LEFT JOIN eam_equipment t2 ON t1.equipment_id = t2.id
+        WHERE
+            t2.equipment_code = #{equipmentId}
+          AND t1.report_status != 'COMPLETE'
+          AND t1.report_status != 'ABOLISH'
+        ORDER BY
+            t1.create_time
+    </select>
+
+    <select id="findInsOrMain" resultType="java.util.Date">
+        SELECT TOP
+            1 t2.last_generate_time
+        FROM
+            eam_equipment t1
+                LEFT JOIN eam_maintenance_standard t2 ON t1.id = t2.equipment_id
+        WHERE
+            t1.equipment_code = #{equipmentId}
+          AND t2.standard_status = 'NORMAL'
+          AND t2.maintenance_category = #{category}
+    </select>
+</mapper>
\ No newline at end of file
diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcBoardService.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcBoardService.java
index 2b02414..7e6879a 100644
--- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcBoardService.java
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcBoardService.java
@@ -1,6 +1,7 @@
 package org.jeecg.modules.mdc.service;
 
 import org.jeecg.modules.mdc.entity.MdcEquipment;
+import org.jeecg.modules.mdc.vo.MdcBoardEquRealTImeVo;
 import org.jeecg.modules.system.entity.MdcProduction;
 
 import java.util.List;
@@ -42,8 +43,9 @@
      */
     Map<String, Object> rateAnalysisTrendMonth(String equipmentId);
 
-//    /**
-//     * 璁惧浜у搧鍚堟牸鐜�
-//     */
-//    Map<String, Object> passRate(String equipmentId);
+    /**
+     * 璁惧瀹炴椂淇℃伅
+     */
+    MdcBoardEquRealTImeVo equipmentRealTimeDetail(String equipmentId);
+
 }
diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentLogServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentLogServiceImpl.java
index 7a2da87..9dea0ce 100644
--- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentLogServiceImpl.java
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentLogServiceImpl.java
@@ -58,4 +58,9 @@
     public List<EquipmentLog> getEquipmentStatusList(List<String> equipmentIdList) {
         return this.baseMapper.getEquipmentStatusList(equipmentIdList);
     }
+
+    @Override
+    public EquipmentLog findAlarmByEquId(String equipmentId) {
+        return this.baseMapper.findAlarmByEquId(equipmentId);
+    }
 }
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