From f4c288c55d08c04cd026508b358beebfcdce5fc2 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期五, 22 五月 2026 09:29:09 +0800
Subject: [PATCH] feat(product): 添加产品型号向下复制功能并优化生产报工重量计算 - 在ProductController中新增downCopy接口实现产品型号批量复制功能 - 将ProductionProductMainDto中的bomInputQty字段重命名为inputWeight - 在ProductionProductMainServiceImpl中添加JSON解析逻辑支持从otherData中提取投入重量 - 新增resolveInputWeight、findParameterValue、findFieldValue等工具方法处理复杂参数解析 - 为ProductModelDto添加targetProductId字段用于指定复制目标 - 修复销售台账按调度员ID和姓名分组的SQL查询问题 - 优化库存服务中剩余数量计算的空值处理逻辑 - 完善生产投料数量为空时的默认值处理机制
---
src/main/resources/mapper/account/AccountExpenseMapper.xml | 36 ++++++++++++++++++++++++++++++++++++
1 files changed, 36 insertions(+), 0 deletions(-)
diff --git a/src/main/resources/mapper/account/AccountExpenseMapper.xml b/src/main/resources/mapper/account/AccountExpenseMapper.xml
index 909f372..1a8d34b 100644
--- a/src/main/resources/mapper/account/AccountExpenseMapper.xml
+++ b/src/main/resources/mapper/account/AccountExpenseMapper.xml
@@ -56,4 +56,40 @@
group by expense_type
</select>
+ <select id="report1" resultType="java.math.BigDecimal">
+ SELECT
+ ifnull(sum(expense_money),0) account
+ FROM account_expense ai
+ where
+ expense_type=#{dictValue}
+ <if test="dateQueryDto.entryDateStart != null and dateQueryDto.entryDateStart != '' ">
+ AND expense_date >= DATE_FORMAT(#{dateQueryDto.entryDateStart},'%Y-%m-%d')
+ </if>
+ <if test="dateQueryDto.entryDateEnd != null and dateQueryDto.entryDateEnd != '' ">
+ AND expense_date <= DATE_FORMAT(#{dateQueryDto.entryDateEnd},'%Y-%m-%d')
+ </if>
+ </select>
+
+ <select id="selectAccountExpenseStats" resultType="com.ruoyi.home.dto.IncomeExpenseAnalysisDto">
+ SELECT DATE_FORMAT(expense_date, #{dateFormat}) as dateStr, IFNULL(SUM(expense_money), 0) as amount
+ FROM account_expense
+ WHERE expense_date BETWEEN #{startDate} AND #{endDate}
+ GROUP BY dateStr
+ </select>
+
+ <select id="selectExpenseComposition" resultType="com.ruoyi.dto.MapDto">
+ SELECT sdd.dict_label as name, CAST(IFNULL(SUM(ae.expense_money), 0) AS CHAR) as value
+ FROM account_expense ae
+ LEFT JOIN sys_dict_data sdd ON ae.expense_type = sdd.dict_value AND sdd.dict_type = 'expense_types'
+ <where>
+ <if test="startDate != null and startDate != ''">
+ AND ae.expense_date >= #{startDate}
+ </if>
+ <if test="endDate != null and endDate != ''">
+ AND ae.expense_date <= #{endDate}
+ </if>
+ </where>
+ GROUP BY ae.expense_type, sdd.dict_label
+ </select>
+
</mapper>
--
Gitblit v1.9.3