From d09c672bbb00e318991e74e1d286630807b87f20 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期四, 28 五月 2026 13:12:50 +0800
Subject: [PATCH] refactor(account): 重构财务模块DTO包结构并添加总账科目功能

---
 src/main/java/com/ruoyi/approve/service/impl/ApproveNodeServiceImpl.java |   36 +++++++++++++++++++++++++-----------
 1 files changed, 25 insertions(+), 11 deletions(-)

diff --git a/src/main/java/com/ruoyi/approve/service/impl/ApproveNodeServiceImpl.java b/src/main/java/com/ruoyi/approve/service/impl/ApproveNodeServiceImpl.java
index 00a53f5..e5838b3 100644
--- a/src/main/java/com/ruoyi/approve/service/impl/ApproveNodeServiceImpl.java
+++ b/src/main/java/com/ruoyi/approve/service/impl/ApproveNodeServiceImpl.java
@@ -13,8 +13,8 @@
 import com.ruoyi.approve.service.IApproveNodeService;
 import com.ruoyi.common.enums.FileNameType;
 import com.ruoyi.common.enums.StockInQualifiedRecordTypeEnum;
-import com.ruoyi.common.enums.StockOutQualifiedRecordTypeEnum;
 import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.common.utils.bean.BeanUtils;
 import com.ruoyi.device.mapper.DeviceRepairMapper;
 import com.ruoyi.device.pojo.DeviceRepair;
 import com.ruoyi.other.service.impl.TempFileServiceImpl;
@@ -25,12 +25,17 @@
 import com.ruoyi.purchase.mapper.PurchaseLedgerMapper;
 import com.ruoyi.purchase.pojo.PurchaseLedger;
 import com.ruoyi.purchase.service.impl.PurchaseLedgerServiceImpl;
-import com.ruoyi.sales.mapper.*;
+import com.ruoyi.sales.dto.ShippingInfoDto;
+import com.ruoyi.sales.mapper.CommonFileMapper;
+import com.ruoyi.sales.mapper.SalesLedgerProductMapper;
+import com.ruoyi.sales.mapper.SalesQuotationMapper;
+import com.ruoyi.sales.mapper.ShippingInfoMapper;
 import com.ruoyi.sales.pojo.CommonFile;
 import com.ruoyi.sales.pojo.SalesLedgerProduct;
 import com.ruoyi.sales.pojo.SalesQuotation;
 import com.ruoyi.sales.pojo.ShippingInfo;
 import com.ruoyi.sales.service.impl.CommonFileServiceImpl;
+import com.ruoyi.sales.service.impl.ShippingInfoServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
@@ -71,6 +76,9 @@
 
     @Autowired
     private ShippingInfoMapper shippingInfoMapper;
+
+    @Autowired
+    private ShippingInfoServiceImpl shippingInfoService;
 
     @Autowired
     private CommonFileServiceImpl commonFileService;
@@ -175,16 +183,18 @@
         }
         approveProcessMapper.updateById(approveProcess);
 
-        DeviceRepair deviceRepair = deviceRepairMapper.selectById(approveProcess.getDeviceRepairId());
-        if(ObjectUtils.isNotNull(deviceRepair)) {
-            if(approveProcess.getApproveStatus().equals(2)){
-                // 鍚屾剰
-                deviceRepair.setStatus(1);
-            }else if(approveProcess.getApproveStatus().equals(3)){
-                // 鎷掔粷
-                deviceRepair.setStatus(2);
+        if (ObjectUtils.isNotNull(approveProcess.getDeviceRepairId())){
+            DeviceRepair deviceRepair = deviceRepairMapper.selectById(approveProcess.getDeviceRepairId());
+            if(ObjectUtils.isNotNull(deviceRepair)) {
+                if(approveProcess.getApproveStatus().equals(2)){
+                    // 鍚屾剰
+                    deviceRepair.setStatus(1);
+                }else if(approveProcess.getApproveStatus().equals(3)){
+                    // 鎷掔粷
+                    deviceRepair.setStatus(2);
+                }
+                deviceRepairMapper.updateById(deviceRepair);
             }
-            deviceRepairMapper.updateById(deviceRepair);
         }
 
         //閲囪喘瀹℃牳
@@ -242,6 +252,10 @@
             if(shippingInfo != null){
                 if(status.equals(2)){
                     shippingInfo.setStatus("瀹℃牳閫氳繃");
+                    ShippingInfoDto shippingInfoDto = new ShippingInfoDto();
+                    BeanUtils.copyProperties(shippingInfo, shippingInfoDto);
+                    shippingInfoService.deductStock(shippingInfoDto);
+                    shippingInfo.setStatus("宸插彂璐�");
                 }else if(status.equals(3)){
                     shippingInfo.setStatus("瀹℃牳鎷掔粷");
                 }else if(status.equals(1)){

--
Gitblit v1.9.3