From 1b6ccb5ac0edeb3c7f2ca9035c87b6ec24209c2f Mon Sep 17 00:00:00 2001
From: buhuazhen <hua100783@gmail.com>
Date: 星期三, 22 四月 2026 14:35:44 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_天津_阳光彩印' into dev_天津_阳光彩印

---
 src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java |   29 +++++++++++++++++++----------
 1 files changed, 19 insertions(+), 10 deletions(-)

diff --git a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
index d497c2e..62a13ef 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
@@ -1,5 +1,6 @@
 package com.ruoyi.production.service.impl;
 
+import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.lang.Assert;
 import cn.hutool.extra.spring.SpringUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -45,10 +46,7 @@
 import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
+import java.util.*;
 import java.util.stream.Collectors;
 
 @Service
@@ -144,8 +142,18 @@
         }
         String productNo = String.format("%s%03d", datePrefix, sequenceNumber);
         productionProductMain.setProductNo(productNo);
-        productionProductMain.setUserId(dto.getUserId());
-        productionProductMain.setUserName(dto.getUserName());
+
+        // 淇敼鐝粍淇℃伅 浠ョ涓�浜轰綔涓哄師鍏坰etUserId setUserName
+        Assert.isTrue(CollUtil.isNotEmpty(dto.getTeamList()),"鐝粍淇℃伅涓嶈兘涓虹┖");
+
+        productionProductMain.setTeamIds(dto.getTeamList().stream().map(ProductionProductMainDto.Team::getUserId).map(String::valueOf).collect(Collectors.joining(",")));
+        productionProductMain.setTeamNames(dto.getTeamList().stream().map(ProductionProductMainDto.Team::getUserName).collect(Collectors.joining(",")));
+
+        productionProductMain.setUserId(dto.getTeamList().get(0).getUserId());
+        productionProductMain.setUserName(dto.getTeamList().get(0).getUserName());
+
+
+
         productionProductMain.setProductProcessRouteItemId(dto.getProductProcessRouteItemId());
         productionProductMain.setWorkOrderId(dto.getWorkOrderId());
         productionProductMain.setAuditUserId(dto.getAuditUserId());
@@ -181,6 +189,7 @@
         productionProductOutput.setProductModelId(productProcessRouteItem.getProductModelId());
         productionProductOutput.setQuantity(dto.getQuantity() != null ? dto.getQuantity() : BigDecimal.ZERO);
         productionProductOutput.setScrapQty(dto.getScrapQty() != null ? dto.getScrapQty() : BigDecimal.ZERO);
+        productionProductOutput.setReplenishQty(dto.getReplenishQty());
         productionProductOutputMapper.insert(productionProductOutput);
         //鍚堟牸鏁伴噺=鎶ュ伐鏁伴噺-鎶ュ簾鏁伴噺
         BigDecimal productQty = productionProductOutput.getQuantity().subtract(productionProductOutput.getScrapQty());
@@ -222,7 +231,9 @@
         ProductionProductMain productionProductMain = productionProductMainMapper.selectById(productAuditVo.getId());
 
         // 褰撳墠瀹℃壒浜� 瑕佷笌褰撳墠鐧诲綍浜轰负鍚屼竴浜�
-        Assert.isTrue(SecurityUtils.getUserId().equals(productionProductMain.getAuditUserId()), "褰撳墠鐧诲綍鐢ㄦ埛涓嶆槸褰撳墠瀹℃壒浜�");
+        if(productionProductMain.getAuditUserId() != -1){
+            Assert.isTrue(SecurityUtils.getUserId().equals(productionProductMain.getAuditUserId()), "褰撳墠鐧诲綍鐢ㄦ埛涓嶆槸褰撳墠瀹℃壒浜�");
+        }
 
 
         // 鐘舵�佸繀椤讳负寰呭鏍哥姸鎬�
@@ -349,9 +360,7 @@
             }
 
             /*娣诲姞鐢熶骇鏍哥畻        鍖哄垎宸ュ簭鏄浠惰繕鏄鏃�*/
-            BigDecimal workHours = (productProcess.getType() == 1)
-                    ? productProcess.getSalaryQuota().multiply(productQty)
-                    : productProcess.getSalaryQuota();
+            BigDecimal workHours = productProcess.getSalaryQuota();
 
             SalesLedgerProductionAccounting salesLedgerProductionAccounting = SalesLedgerProductionAccounting.builder()
                     .productMainId(productionProductMain.getId())

--
Gitblit v1.9.3