From 5cd4558fb1a7178653d77e1a982e6f26d06b5db5 Mon Sep 17 00:00:00 2001
From: Lius <Lius2225@163.com>
Date: 星期一, 31 三月 2025 17:39:00 +0800
Subject: [PATCH] 中心综合利用率趋势接口

---
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEfficiencyReportMapper.xml |   71 ++++++++++++++++++++++++++++++++++-
 1 files changed, 68 insertions(+), 3 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..b249fad 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
@@ -187,14 +187,14 @@
         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
         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 +202,73 @@
             <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
+        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,
+            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