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/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java |   31 ++++++++++++++++++++++++++++++-
 1 files changed, 30 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java b/src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java
index f66e1b3..b1c41ac 100644
--- a/src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java
+++ b/src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java
@@ -1,12 +1,41 @@
 package com.ruoyi.production.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.production.dto.ProductionProductMainDto;
+import com.ruoyi.production.dto.SalesLedgerProductionAccountingDto;
+import com.ruoyi.production.pojo.ProductOrder;
 import com.ruoyi.production.pojo.ProductionProductMain;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
-import javax.annotation.ManagedBean;
+import java.util.ArrayList;
+import java.util.List;
 
 @Mapper
 public interface ProductionProductMainMapper extends BaseMapper<ProductionProductMain> {
 
+    IPage<ProductionProductMainDto> listPageProductionProductMainDto(Page page, @Param("c") ProductionProductMainDto productionProductMainDto);
+
+    /**
+     * 鏍规嵁宸ュ崟 ID 鎵归噺鍒犻櫎鎶ュ伐涓昏〃鏁版嵁銆�
+     */
+    int deleteByWorkOrderIds(@Param("workOrderIds") List<Long> workOrderIds);
+
+    /**
+     * 鏍规嵁鎶ュ伐 ID 鏌ヨ鐢熶骇璁㈠崟銆�
+     */
+    ProductOrder getOrderByMainId(@Param("productMainId") Long productMainId);
+
+    IPage<ProductionProductMainDto> listProductionDetails(@Param("ew") SalesLedgerProductionAccountingDto salesLedgerProductionAccountingDto, Page page);
+
+    ArrayList<Long> listMain(List<Long> idList);
+
+    List<ProductionProductMainDto> getByProductWorkOrderId(Long productWorkOrderId);
+
+    /**
+     * 鏍¢獙鍚屼竴鐢熶骇璁㈠崟涓嬬殑涓婁竴閬撳伐搴忔槸鍚﹀凡缁忔姤宸ャ��
+     */
+    boolean checkPreviousProcessReported(@Param("workOrderId") Long workOrderId, @Param("currentDragSort") Integer currentDragSort);
 }

--
Gitblit v1.9.3