From e935889261ef38c8eaef31e54cbfc466d63d2ef4 Mon Sep 17 00:00:00 2001
From: hyingbo <1363390067@qq.com>
Date: 星期四, 17 七月 2025 09:42:28 +0800
Subject: [PATCH] fanuc获取程序名、获取报警描述

---
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEfficiencyReportMapper.xml |   88 +++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 82 insertions(+), 6 deletions(-)

diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEfficiencyReportMapper.xml b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEfficiencyReportMapper.xml
index 4458f0d..74ccdcb 100644
--- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEfficiencyReportMapper.xml
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEfficiencyReportMapper.xml
@@ -18,10 +18,14 @@
             t1.open_long / 86400 openRate,
             t1.open_long openLong,
             t1.wait_long waitLong,
-            t1.close_long closeLong
+            t1.close_long closeLong,
+            COALESCE(t3.fault_long, 0) faultLong,
+            COALESCE(t3.fault_rate, 0) faultRate,
+            COALESCE(t3.remove_fault_run_long, 0) removeFaultRunLong
         FROM
             mdc_equipment t2
             LEFT JOIN mdc_equipment_statistical_info t1 ON t1.equipment_id = t2.equipment_id
+            LEFT JOIN mdc_equipment_fault_info t3 ON t2.equipment_id = t3.equipment_id AND t1.the_date = t3.the_date
         WHERE
             t1.the_date &lt;= #{ vo.endTime }
             AND t1.the_date &gt;= #{ vo.startTime }
@@ -65,10 +69,14 @@
             t1.open_long / 86400 openRate,
             t1.open_long openLong,
             t1.wait_long waitLong,
-            t1.close_long closeLong
+            t1.close_long closeLong,
+            COALESCE(t3.fault_long, 0) faultLong,
+            COALESCE(t3.fault_rate, 0) faultRate,
+            COALESCE(t3.remove_fault_run_long, 0) removeFaultRunLong
         FROM
             mdc_equipment t2
             LEFT JOIN mdc_equipment_statistical_info t1 ON t1.equipment_id = t2.equipment_id
+            LEFT JOIN mdc_equipment_fault_info t3 ON t2.equipment_id = t3.equipment_id AND t1.the_date = t3.the_date
         WHERE
             t1.the_date &lt;= #{ vo.endTime }
             AND t1.the_date &gt;= #{ vo.startTime }
@@ -187,14 +195,15 @@
         ORDER BY the_date ASC
     </select>
 
-    <select id="teamEquipmentEfficiencyAnalyze" resultType="org.jeecg.modules.mdc.dto.TeamEquipmentEfficiencyAnalyzeDto">
+    <select id="equipmentEfficiencyAnalyze" resultType="org.jeecg.modules.mdc.dto.EquipmentEfficiencyAnalyzeDto">
         SELECT
             t3.equipment_name,
             t1.utilization_rate AS utilizationRate,
-            t2.utilization_rate AS shiftUtilizationRate
+            t2.utilization_rate AS shiftUtilizationRate,
+            t1.remove_fault_rate AS amendUtilizationRate
         FROM
             mdc_equipment_statistical_info_month t1
-                LEFT JOIN mdc_equipment_statistical_shift_info_month t2 ON t1.the_month = t2.the_month
+                LEFT JOIN mdc_equipment_statistical_shift_info_month t2 ON t1.the_month = t2.the_month AND t2.shift_type = 1
                 AND t1.equipment_id = t2.equipment_id
                 LEFT JOIN mdc_equipment t3 ON t3.equipment_id = t1.equipment_id
         WHERE
@@ -202,8 +211,75 @@
             <foreach collection="equipmentIdList" item="id" index="index" open="(" close=")" separator=",">
                 #{id}
             </foreach>
-          AND t1.the_month = #{month}
+            AND t1.the_month = #{month}
         ORDER BY
             t1.utilization_rate DESC
     </select>
+
+    <select id="teamEquipmentEfficiencyAnalyze" resultType="org.jeecg.modules.mdc.dto.TeamEquEffDto">
+        SELECT
+            t3.team_code AS teamCode,
+            t1.utilization_rate AS utilizationRate,
+            t2.utilization_rate AS shiftUtilizationRate,
+            t1.remove_fault_rate AS amendUtilizationRate
+        FROM
+            mdc_equipment_statistical_info_month t1
+                LEFT JOIN mdc_equipment_statistical_shift_info_month t2 ON t1.the_month = t2.the_month AND t2.shift_type = 1
+                AND t1.equipment_id = t2.equipment_id
+                LEFT JOIN mdc_equipment t3 ON t3.equipment_id = t1.equipment_id
+        WHERE
+            t1.equipment_id IN
+            <foreach collection="equipmentIdList" item="id" index="index" open="(" close=")" separator=",">
+                #{id}
+            </foreach>
+            AND t1.the_month = #{month}
+    </select>
+
+    <select id="comprehensiveRateAnalyze" resultType="org.jeecg.modules.mdc.dto.ComRateDto">
+        SELECT
+            t1.the_month AS theMonth,
+            AVG ( t1.utilization_rate ) AS utilizationRate,
+            AVG ( t2.utilization_rate ) AS shiftUtilizationRate,
+            AVG ( t1.remove_fault_rate ) AS amendUtilizationRate,
+            SUM ( t1.process_long ) AS processLong
+        FROM
+            mdc_equipment_statistical_info_month t1
+                LEFT JOIN mdc_equipment_statistical_shift_info_month t2 ON t1.the_month = t2.the_month
+                AND t1.equipment_id = t2.equipment_id
+                AND t2.shift_type = 1
+                LEFT JOIN mdc_equipment t3 ON t3.equipment_id = t1.equipment_id
+        WHERE
+            t1.equipment_id IN
+            <foreach collection="equipmentIdList" item="id" index="index" open="(" close=")" separator=",">
+                #{id}
+            </foreach>
+            AND t1.the_month BETWEEN #{start} AND #{end}
+        GROUP BY
+            t1.the_month
+        ORDER BY
+            t1.the_month
+    </select>
+
+    <select id="comprehensiveShiftRateAnalyze" resultType="org.jeecg.modules.mdc.dto.ComShiftRateDto">
+        SELECT
+            t1.the_month AS theMonth,
+            t1.shift_sub AS shiftSub,
+            t2.shift_sub_name AS shiftSubName,
+            AVG ( t1.utilization_rate ) AS utilizationRate
+        FROM
+            mdc_equipment_statistical_shift_info_month t1
+                LEFT JOIN mdc_shift_sub t2 ON t1.shift_sub = t2.id
+        WHERE
+            t2.shift_id = #{shiftId}
+            AND t1.equipment_id IN
+            <foreach collection="equipmentIdList" item="id" index="index" open="(" close=")" separator=",">
+                #{id}
+            </foreach>
+            AND t1.the_month BETWEEN #{start} AND #{end}
+            AND t1.shift_type = 2
+        GROUP BY
+            t1.the_month,
+            t1.shift_sub,
+            t2.shift_sub_name
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.3