From 5862905480f0887b84194722b2b2b6a7f979df43 Mon Sep 17 00:00:00 2001
From: buhuazhen <hua100783@gmail.com>
Date: 星期三, 20 五月 2026 18:35:42 +0800
Subject: [PATCH] 调整信息

---
 src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java |   26 +++++++++++++++++++-------
 1 files changed, 19 insertions(+), 7 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 b1ae21e..e651217 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
@@ -161,8 +161,8 @@
 
         productionProductMain.setProductProcessRouteItemId(dto.getProductProcessRouteItemId());
         productionProductMain.setWorkOrderId(dto.getWorkOrderId());
-        productionProductMain.setAuditUserId(dto.getAuditUserId());
-        productionProductMain.setAuditUserName(dto.getAuditUserName());
+//        productionProductMain.setAuditUserId(dto.getAuditUserId());
+//        productionProductMain.setAuditUserName(dto.getAuditUserName());
         productionProductMain.setStatus(0);
         if (ObjectUtils.isNotEmpty(dto.getStartTime()) && ObjectUtils.isNotEmpty(dto.getEndTime())) {
             productionProductMain.setStartTime(dto.getStartTime());
@@ -173,6 +173,11 @@
         }
         productionProductMain.setDeviceId(dto.getDeviceId());
         productionProductMain.setDeviceName(dto.getDeviceName());
+
+        // 瀹℃壒浜轰负鑷繁 鐩存帴閫氳繃瀹℃壒
+        productionProductMain.setAuditUserName(SecurityUtils.getUsername());
+        productionProductMain.setAuditUserId(SecurityUtils.getUserId());
+
         productionProductMainMapper.insert(productionProductMain);
         /*鏂板鎶ュ伐鎶曞叆琛�*/
         List<ProductStructureDto> productStructureDtos = productStructureMapper.listBybomAndProcess(productProcessRoute.getBomId(), productProcess.getId());
@@ -184,14 +189,12 @@
             productStructureDtos.add(productStructureDto);
         }
         for (ProductStructureDto productStructureDto : productStructureDtos) {
-
             ProductionProductInput productionProductInput = new ProductionProductInput();
             productionProductInput.setProductModelId(productStructureDto.getProductModelId());
             productionProductInput.setQuantity(productStructureDto.getUnitQuantity().multiply(dto.getQuantity()));
             productionProductInput.setProductMainId(productionProductMain.getId());
             productionProductInputMapper.insert(productionProductInput);
 //            stockUtils.substractStock(productStructureDto.getProductModelId(), productionProductInput.getQuantity(), StockOutQualifiedRecordTypeEnum.PRODUCTION_REPORT_STOCK_OUT.getCode(), productionProductMain.getId());
-
         }
         /*鏂板鎶ュ伐浜у嚭琛�*/
         ProductionProductOutput productionProductOutput = new ProductionProductOutput();
@@ -230,8 +233,12 @@
             }
             productOrderMapper.updateById(productOrder);
         }
-
-        //nextAddProductMain(productionProductOutput) // 鐢变簬闇�瑕佸鏍革紝鎵�浠ラ渶瑕佹媶灏佷笅鏉�
+        ProductAuditVo productAuditVo = new ProductAuditVo();
+        productAuditVo.setId(productionProductMain.getId());
+        productAuditVo.setAuditStatus(AuditEnum.AUDIT_SUCCESS);
+        productAuditVo.setAuditOpinion("");
+        ((ProductionProductMainService) AopContext.currentProxy()).auditProductMain(productAuditVo);
+//        nextAddProductMain(productionProductOutput) // 鐢变簬闇�瑕佸鏍革紝鎵�浠ラ渶瑕佹媶灏佷笅鏉�
         return true;
     }
 
@@ -374,6 +381,10 @@
             List<ProductionMachineRecord> productionMachineRecords = productionMachineRecordMapper.selectList(Wrappers.<ProductionMachineRecord>lambdaQuery().eq(ProductionMachineRecord::getWorkOrderId, productionProductMain.getWorkOrderId()));
             if (ObjectUtils.isNotEmpty(productionMachineRecords)) {
                 for (ProductionMachineRecord productionMachineRecord : productionMachineRecords) {
+                    //璇存槑宸茬粡娣诲姞杩囦簡锛屼笉娣诲姞浜�
+                    if (productionMachineRecord.getReportStatus()) {
+                        continue;
+                    }
                     for (String s : productionMachineRecord.getOperatorId().split(",")) {
                         Long minutes = 0L;
                         if (productionMachineRecord.getMachineStartTime() != null) {
@@ -393,7 +404,8 @@
                                 .build();
                         salesLedgerProductionAccountingMapper.insert(salesLedgerProductionAccounting);
                     }
-
+                    productionMachineRecord.setReportStatus(true);
+                    productionMachineRecordMapper.updateById(productionMachineRecord);
                 }
             }
         }

--
Gitblit v1.9.3