From 21cbdad6f59a045910b22bb3bf771e47d56c096f Mon Sep 17 00:00:00 2001
From: cuilei <ray_tsu1@163.com>
Date: 星期五, 13 六月 2025 11:36:08 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentPunchMapper.xml |   91 +++++++++++++++++++++++++++++++++------------
 1 files changed, 67 insertions(+), 24 deletions(-)

diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentPunchMapper.xml b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentPunchMapper.xml
index 48cc0e8..8c27d52 100644
--- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentPunchMapper.xml
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentPunchMapper.xml
@@ -4,31 +4,31 @@
 
     <select id="list" resultType="org.jeecg.modules.mdc.entity.MdcEquipmentPunch">
         SELECT
-          p.id,
-          p.equipment_id,
-          p.punch_user,
-          p.check_in_time,
-          p.check_out_time,
-          p.record_date,
-          p.is_absent,
-          p.is_late,
-          p.is_early,
-          p.create_by,
-          p.create_time,
-          p.update_by,
-          p.update_time,
-          p.shift_schedule,
-          u.realname punchUserRealName,
-          u.username punchUserUserName,
-          d1.item_text shiftScheduleName
+        p.id,
+        p.equipment_id,
+        p.punch_user,
+        p.check_in_time,
+        p.check_out_time,
+        p.record_date,
+        p.is_absent,
+        p.is_late,
+        p.is_early,
+        p.create_by,
+        p.create_time,
+        p.update_by,
+        p.update_time,
+        p.shift_schedule,
+        u.realname punchUserRealName,
+        u.username punchUserUserName,
+        d1.item_text shiftScheduleName
         FROM
-          mdc_equipment_punch p
-          INNER JOIN sys_user u ON u.id = p.punch_user
-          INNER JOIN (SELECT i1.item_text, i1.item_value
-                      FROM sys_dict_item i1
-                          LEFT JOIN sys_dict i2 ON i2.id = i1.dict_id
-                      WHERE i2.dict_code = 'shift_schedule') d1
-              ON d1.item_value = CAST (p.shift_schedule AS nvarchar)
+        mdc_equipment_punch p
+        INNER JOIN sys_user u ON u.id = p.punch_user
+        INNER JOIN (SELECT i1.item_text, i1.item_value
+        FROM sys_dict_item i1
+        LEFT JOIN sys_dict i2 ON i2.id = i1.dict_id
+        WHERE i2.dict_code = 'shift_schedule') d1
+        ON d1.item_value = CAST (p.shift_schedule AS nvarchar)
         where 1=1
         AND p.equipment_id IN
         <foreach collection="equipmentIds" item="equipmentId" open="(" close=")" separator=",">
@@ -39,4 +39,47 @@
         </if>
         order by p.equipment_id desc, p.shift_schedule asc
     </select>
+
+    <!--鏌ヨ鎵�鏈夎澶囨暟閲�-->
+    <select id="getTotalDeviceCount" resultType="int">
+        SELECT COUNT(*)
+        FROM mdc_equipment
+    </select>
+
+    <!-- 鏃╃彮 涓婄彮鎵撳崱 -->
+    <select id="countMorningShiftIn" resultType="int">
+        SELECT COUNT(DISTINCT equipment_id)
+        FROM mdc_equipment_punch
+        WHERE record_date = #{date, jdbcType=VARCHAR}
+          AND shift_schedule = '1'
+          AND check_in_time IS NOT NULL
+    </select>
+
+    <!-- 鏅氱彮 涓婄彮鎵撳崱 -->
+    <select id="countEveningShiftIn" resultType="int">
+        SELECT COUNT(DISTINCT equipment_id)
+        FROM mdc_equipment_punch
+        WHERE record_date = #{date, jdbcType=VARCHAR}
+          AND shift_schedule = '2'
+          AND check_in_time IS NOT NULL
+    </select>
+
+    <!-- 鏃╃彮 涓嬬彮鎵撳崱 -->
+    <select id="countMorningShiftOut" resultType="int">
+        SELECT COUNT(DISTINCT equipment_id)
+        FROM mdc_equipment_punch
+        WHERE record_date = #{date, jdbcType=VARCHAR}
+          AND shift_schedule = '1'
+          AND check_out_time IS NOT NULL
+    </select>
+
+    <!-- 鏅氱彮 涓嬬彮鎵撳崱 -->
+    <select id="countEveningShiftOut" resultType="int">
+        SELECT COUNT(DISTINCT equipment_id)
+        FROM mdc_equipment_punch
+        WHERE record_date = #{date, jdbcType=VARCHAR}
+          AND shift_schedule = '2'
+          AND check_out_time IS NOT NULL
+    </select>
+
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.3