From 47806d9e390ee00e1d29ad1da8c1aa908882a758 Mon Sep 17 00:00:00 2001
From: yuan <123@>
Date: 星期二, 11 八月 2026 14:43:59 +0800
Subject: [PATCH] 用河南鹤壁代码覆盖山西长治

---
 src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java |   70 ++++++-----------------------------
 1 files changed, 12 insertions(+), 58 deletions(-)

diff --git a/src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java
index be34bc0..ea38018 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java
@@ -2,22 +2,17 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.approve.bean.dto.ApprovalInstanceDto;
-import com.ruoyi.approve.mapper.ApprovalTemplateMapper;
-import com.ruoyi.approve.pojo.ApprovalTemplate;
 import com.ruoyi.approve.pojo.ApproveProcess;
-import com.ruoyi.approve.service.ApprovalInstanceService;
 import com.ruoyi.approve.service.impl.ApproveProcessServiceImpl;
 import com.ruoyi.basic.enums.ApplicationTypeEnum;
 import com.ruoyi.basic.enums.RecordTypeEnum;
 import com.ruoyi.basic.utils.FileUtil;
 import com.ruoyi.common.enums.FileNameType;
+import com.ruoyi.common.enums.StockInQualifiedRecordTypeEnum;
 import com.ruoyi.common.enums.StockOutQualifiedRecordTypeEnum;
-import com.ruoyi.common.utils.OrderUtils;
-import com.ruoyi.common.utils.SecurityUtils;
-import com.ruoyi.framework.security.LoginUser;
 import com.ruoyi.procurementrecord.bean.vo.ShippingProductVo;
 import com.ruoyi.procurementrecord.utils.StockUtils;
 import com.ruoyi.sales.dto.ShippingApproveDto;
@@ -29,13 +24,16 @@
 import com.ruoyi.sales.pojo.ShippingInfo;
 import com.ruoyi.sales.pojo.ShippingProductDetail;
 import com.ruoyi.sales.service.ShippingInfoService;
+import com.ruoyi.stock.pojo.StockInRecord;
+import com.ruoyi.stock.pojo.StockOutRecord;
+import com.ruoyi.stock.service.StockOutRecordService;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections4.CollectionUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.time.LocalDateTime;
+import java.util.Collections;
 import java.util.List;
 
 /**
@@ -60,8 +58,7 @@
     private final ApproveProcessServiceImpl approveProcessService;
     private final FileUtil fileUtil;
     private final ShippingProductDetailMapper shippingProductDetailMapper;
-    private final ApprovalTemplateMapper approvalTemplateMapper;
-    private final ApprovalInstanceService approvalInstanceService;
+    private final StockOutRecordService stockOutRecordService;
 
     @Override
     public IPage<ShippingInfoDto> listPage(Page page, ShippingInfo req) {
@@ -147,6 +144,11 @@
         shippingProductDetailMapper.insert(req.getBatchNoDetailList());
         for (ShippingProductDetail shippingProductDetail : req.getBatchNoDetailList()) {
             stockUtils.substractStock(shippingProductDetail.getProductModelId(), shippingProductDetail.getQuantity(), StockOutQualifiedRecordTypeEnum.SALE_SHIP_STOCK_OUT.getCode(), req.getId(), shippingProductDetail.getBatchNo());
+            //StockOutRecord stockOutRecord = stockOutRecordService.getOne(Wrappers.<StockOutRecord>lambdaQuery()
+            //        .eq(StockOutRecord::getRecordId, req.getId())
+            //        .eq(StockOutRecord::getRecordType, StockOutQualifiedRecordTypeEnum.SALE_SHIP_STOCK_OUT.getCode())
+            //);
+            //stockOutRecordService.batchApprove(Collections.singletonList(stockOutRecord.getId()),1);
         }
         // 淇濆瓨鏂囦欢
         fileUtil.saveStorageAttachment(ApplicationTypeEnum.IMAGE, RecordTypeEnum.SHIPPING_INFO, req.getId(), req.getStorageBlobDTOs());
@@ -167,53 +169,5 @@
         List<ShippingProductDetailDto> dateilByShippingNo = shippingProductDetailMapper.getDateilByShippingNo(shippingNo);
         shippingApproveDto.setShippingProductDetailDtoList(dateilByShippingNo);
         return shippingApproveDto;
-    }
-
-    @Override
-    public boolean addReq(ShippingInfoDto req) {
-
-        // 鏍¢獙璇ヤ骇鍝佹槸鍚﹀凡鏈夊緟瀹℃牳/瀹℃牳涓殑鍙戣揣璁板綍锛岄槻姝㈤噸澶嶆彁浜�
-        Long salesLedgerProductId = req.getSalesLedgerProductId();
-        if (salesLedgerProductId != null) {
-            long pendingCount = this.count(new LambdaQueryWrapper<ShippingInfo>()
-                    .eq(ShippingInfo::getSalesLedgerProductId, salesLedgerProductId)
-                    .in(ShippingInfo::getStatus, "寰呭鏍�", "瀹℃牳涓�"));
-            if (pendingCount > 0) {
-                throw new RuntimeException("璇ヤ骇鍝佸凡鏈夊緟瀹℃牳鐨勫彂璐ц褰曪紝璇峰嬁閲嶅鎻愪氦");
-            }
-        }
-
-        LoginUser loginUser = SecurityUtils.getLoginUser();
-        String sh = OrderUtils.countTodayByCreateTime(shippingInfoMapper, "SH","shipping_no",req.getCreateTime());
-        // 鍏堜繚瀛樺彂璐у崟锛屽啀鍙戣捣瀹℃壒锛涙棤瀹℃牳浜鸿嚜鍔ㄩ�氳繃鏃堕渶瑕佹寜鍙戣揣缂栧彿鍥炲啓鍙戣揣鐘舵�併��
-        req.setShippingNo(sh);
-        req.setStatus("寰呭鏍�");
-        boolean save = this.add(req);
-        // 鍙戣揣瀹℃壒
-        ApprovalTemplate approvalTemplate = approvalTemplateMapper.selectOne(
-                new LambdaQueryWrapper<ApprovalTemplate>()
-                        .eq(ApprovalTemplate::getBusinessType, 7L)
-                        .eq(ApprovalTemplate::getDeleted, 0)
-                        .orderByDesc(ApprovalTemplate::getId)
-                        .last("LIMIT 1")
-        );
-        if (approvalTemplate == null) {
-            throw new RuntimeException("璇峰厛閰嶇疆鍙戣揣瀹℃壒妯℃澘");
-        }
-        ApprovalInstanceDto approvalInstance = new ApprovalInstanceDto();
-        approvalInstance.setTemplateId(approvalTemplate.getId());
-        approvalInstance.setTemplateName(approvalTemplate.getTemplateName());
-        approvalInstance.setBusinessId(req.getId());
-        approvalInstance.setBusinessType(7L);
-        approvalInstance.setCurrentLevel(1);
-        approvalInstance.setTitle(sh);
-        approvalInstance.setApplicantId(loginUser.getUserId());
-        approvalInstance.setApplicantName(loginUser.getNickName());
-        approvalInstance.setApplyTime(LocalDateTime.now());
-        approvalInstanceService.add(approvalInstance);
-        // 鍒涘缓瀹℃壒瀹炰緥鍚庯紝鏇存柊鍙戣揣鐘舵�佷负"瀹℃牳涓�"锛屼娇鍓嶇姝g‘鏄剧ず瀹℃壒鐘舵��
-        req.setStatus("瀹℃牳涓�");
-        this.updateById(req);
-        return true;
     }
 }

--
Gitblit v1.9.3