From a76e1d17d67641993dea6335cb8e1465a94df58d Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期四, 21 五月 2026 15:39:05 +0800
Subject: [PATCH] feat(stock): 优化库存管理和成品树结构功能 1- 为ApproveProcessMapper.xml和ProductBomMapper.xml添加排序功能 2- 在ProductionProductMainDto中新增bomInputQty字段用于产品结构投入数量 3- 修改ProductionProductMainServiceImpl中投入数量计算逻辑,使用前端传入的bomInputQty值 4- 在ProductWorkOrderDto中添加bomInputQty字段并在服务实现中计算标准投入数量 5- 更新SalesLedgerMapper.xml查询逻辑,从product_summary获取电压信息 6- 为SalesLedgerProduct添加stockId字段并修改库存扣减逻辑使用具体库存ID 7- 重构StockInventoryController中的成品库存树查询接口和导入导出功能 8- 新增成品和非成品库存导入导出的数据模型和Excel工具类 9- 优化StockInventoryServiceImpl中的库存扣减逻辑,支持按特定库存ID操作 10- 更新库存导入导出功能,区分成品和非成品类型并提供相应模板

---
 src/main/resources/mapper/device/DeviceLedgerMapper.xml |   74 +++++++++++++++++++++++++++---------
 1 files changed, 55 insertions(+), 19 deletions(-)

diff --git a/src/main/resources/mapper/device/DeviceLedgerMapper.xml b/src/main/resources/mapper/device/DeviceLedgerMapper.xml
index 43b7472..de3f8d8 100644
--- a/src/main/resources/mapper/device/DeviceLedgerMapper.xml
+++ b/src/main/resources/mapper/device/DeviceLedgerMapper.xml
@@ -5,24 +5,35 @@
 
 <mapper namespace="com.ruoyi.device.mapper.DeviceLedgerMapper">
 
-    <select id="queryPage" resultType="com.ruoyi.device.pojo.DeviceLedger">
+    <select id="queryPage" resultType="com.ruoyi.device.dto.DeviceLedgerDto">
         SELECT
-        id,
-        device_name AS deviceName,
-        device_model AS deviceModel,
-        supplier_name AS supplierName,
-        unit,
-        number,
-        tax_including_price_unit AS taxIncludingPriceUnit,
-        tax_including_price_total AS taxIncludingPriceTotal,
-        tax_rate AS taxRate,
-        un_tax_including_price_total AS unTaxIncludingPriceTotal,
-        create_time AS createTime,
-        update_time AS updateTime,
-        create_user AS createUser,
-        update_user AS updateUser,
-        tenant_id AS tenantId
-        FROM device_ledger
+        dl.id,
+        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.nick_name AS createUser,
+        dl.update_user,
+        dl.tenant_id,
+        dl.is_depr,
+        dl.annual_depreciation_amount,
+        dl.type
+        FROM device_ledger dl
+        left join sys_user su on dl.create_user = su.user_id
         <where>
             <!-- 璁惧鍚嶇О -->
             <if test="deviceLedger.deviceName != null and deviceLedger.deviceName != ''">
@@ -54,15 +65,40 @@
                 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}
             </if>
         </where>
-        ORDER BY create_time DESC
+        ORDER BY id
     </select>
-    <select id="deviceLedgerExportList" resultType="com.ruoyi.device.dto.DeviceLedgerExeclDto">
+    <select id="deviceLedgerExportList" resultType="com.ruoyi.device.execl.DeviceLedgerExeclDto">
 
     </select>
+    <select id="selectById1" resultType="com.ruoyi.device.pojo.DeviceLedger">
+        select *
+        from device_ledger
+        where 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