From f32de021e7af1627b6d18e681b46dbc0a5b108f8 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期二, 21 四月 2026 13:33:04 +0800
Subject: [PATCH] feat: 设备台账与工序进行绑定

---
 src/main/resources/mapper/device/DeviceLedgerMapper.xml |   51 ++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 48 insertions(+), 3 deletions(-)

diff --git a/src/main/resources/mapper/device/DeviceLedgerMapper.xml b/src/main/resources/mapper/device/DeviceLedgerMapper.xml
index 588e518..c4a9616 100644
--- a/src/main/resources/mapper/device/DeviceLedgerMapper.xml
+++ b/src/main/resources/mapper/device/DeviceLedgerMapper.xml
@@ -11,19 +11,32 @@
         dl.device_name,
         dl.device_model,
         dl.supplier_name,
+        dl.device_brand,
+        dl.storage_location,
         dl.unit,
         dl.number,
+        dl.status,
+        dl.plan_runtime_time,
+        dl.start_runtime_time,
+        dl.end_runtime_time,
+        dl.runtime_duration,
         dl.tax_including_price_unit,
         dl.tax_including_price_total,
         dl.tax_rate,
         dl.un_tax_including_price_total,
         dl.create_time,
         dl.update_time ,
-        su.user_name AS createUser,
+        su.nick_name AS createUser,
         dl.update_user,
-        dl.tenant_id
+        dl.tenant_id,
+        dl.is_depr,
+        dl.annual_depreciation_amount,
+        dl.type,
+        dl.product_process_id,
+        pp.name AS productProcessName
         FROM device_ledger dl
-        left join  sys_user  su on dl.create_user = su.user_id
+        left join sys_user su on dl.create_user = su.user_id
+        left join product_process pp on dl.product_process_id = pp.id
         <where>
             <!-- 璁惧鍚嶇О -->
             <if test="deviceLedger.deviceName != null and deviceLedger.deviceName != ''">
@@ -33,6 +46,11 @@
             <!-- 瑙勬牸鍨嬪彿 -->
             <if test="deviceLedger.deviceModel != null and deviceLedger.deviceModel != ''">
                 AND device_model LIKE CONCAT('%', #{deviceLedger.deviceModel}, '%')
+            </if>
+
+            <!-- 宸ュ簭鍚嶇О -->
+            <if test="deviceLedger.productProcessName != null and deviceLedger.productProcessName != ''">
+                AND pp.name LIKE CONCAT('%', #{deviceLedger.productProcessName}, '%')
             </if>
 
             <!-- 渚涘簲鍟嗗悕绉� -->
@@ -55,6 +73,13 @@
                 AND update_user LIKE CONCAT('%', #{deviceLedger.updateUser}, '%')
             </if>
 
+            <if test="deviceLedger.entryDateStart != null and deviceLedger.entryDateStart != '' ">
+                AND dl.create_time &gt;= DATE_FORMAT(#{deviceLedger.entryDateStart},'%Y-%m-%d')
+            </if>
+            <if test="deviceLedger.entryDateEnd != null and deviceLedger.entryDateEnd != '' ">
+                AND dl.create_time &lt;= DATE_FORMAT(#{deviceLedger.entryDateEnd},'%Y-%m-%d')
+            </if>
+
             <!-- 绉熸埛ID -->
             <if test="deviceLedger.tenantId != null">
                 AND tenant_id = #{deviceLedger.tenantId}
@@ -65,5 +90,25 @@
     <select id="deviceLedgerExportList" resultType="com.ruoyi.device.execl.DeviceLedgerExeclDto">
 
     </select>
+    <select id="selectById1" resultType="com.ruoyi.device.pojo.DeviceLedger">
+        select dl.*,
+               pp.name as productProcessName
+        from device_ledger dl
+                 left join product_process pp on dl.product_process_id = pp.id
+        where dl.id = #{id}
+    </select>
+    <select id="getDeviceTypeDistributionByYear"
+            resultType="com.ruoyi.account.dto.DeviceTypeDetail"
+            parameterType="java.lang.Integer">
+        SELECT
+            `type`,
+            SUM(`number`) AS `count`,
+            SUM(tax_including_price_unit) AS amount
+        FROM device_ledger
+        WHERE YEAR(create_time) = #{year}
+          AND type IS NOT NULL
+        GROUP BY type
+    </select>
+
 
 </mapper>

--
Gitblit v1.9.3