From 1d71e8d6e37f7e992c9db9a77b9be86cb240afa1 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期五, 18 四月 2025 11:00:28 +0800
Subject: [PATCH] #修改 1. 收货通知单导入报错问题修复

---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaitPakinServiceImpl.java |   26 +++++++++++++++++---------
 1 files changed, 17 insertions(+), 9 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaitPakinServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaitPakinServiceImpl.java
index 07e3d46..41f21f6 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaitPakinServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaitPakinServiceImpl.java
@@ -2,7 +2,6 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.vincent.rsf.framework.exception.CoolException;
 import com.vincent.rsf.server.manager.controller.params.PakinItem;
 import com.vincent.rsf.server.manager.controller.params.WaitPakinParam;
@@ -16,7 +15,6 @@
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.core.parameters.P;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -41,16 +39,17 @@
     private LocService locService;
 
     /**
+     * @param
+     * @param userId
+     * @return
      * @author Ryan
      * @description 缁勬嫋
-     * @param
-     * @return
      * @time 2025/3/29 14:42
      */
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public WaitPakin mergeItems(WaitPakinParam waitPakin) {
-        if (waitPakin.getItems().isEmpty()) {
+    public WaitPakin mergeItems(WaitPakinParam waitPakin, Long userId) {
+        if (Objects.isNull(waitPakin.getItems()) || waitPakin.getItems().isEmpty()) {
             throw new CoolException("鍙傛暟閿欒锛氱墿鏂欒窡韪爜涓虹┖锛�");
         }
         if (StringUtils.isBlank(waitPakin.getBarcode())) {
@@ -84,6 +83,8 @@
                     //鐘舵�佷慨鏀逛负鍏ュ簱涓�
                     .setIoStatus(Short.parseShort(PakinIOStatus.PAKIN_IO_STATUS_DONE.val))
                     .setAnfme(sum)
+                    .setUpdateBy(userId)
+                    .setCreateBy(userId)
                     .setBarcode(waitPakin.getBarcode());
             if (!this.save(waitPakin1)) {
                 throw new CoolException("涓诲崟淇濆瓨澶辫触锛侊紒");
@@ -125,10 +126,12 @@
                         .setFieldsIndex(item.getFieldsIndex())
                         .setMatnrId(item.getMatnrId())
                         .setMaktx(item.getMaktx())
+                        .setUpdateBy(userId)
+                        .setCreateBy(userId)
                         .setMatnrCode(item.getMatnrCode());
                 for (PakinItem waitPakinItem : waitPakin.getItems()) {
                     if (waitPakinItem.getTrackCode().equals(item.getTrackCode())) {
-                        if (waitPakinItem.getReceiptQty() > item.getAnfme()) {
+                        if (waitPakinItem.getReceiptQty() > item.getAnfme() || waitPakinItem.getReceiptQty().compareTo(0.0) >= 0) {
                             throw new CoolException("缁勬嫋鏁伴噺涓嶈兘澶т簬鏀惰揣鏁伴噺锛侊紒");
                         }
                         pakinItem.setAnfme(waitPakinItem.getReceiptQty()).setTrackCode(waitPakinItem.getTrackCode());
@@ -159,11 +162,13 @@
                         .setFieldsIndex(item.getFieldsIndex())
                         .setMatnrId(item.getMatnrId())
                         .setMaktx(item.getMaktx())
+                        .setUpdateBy(userId)
+                        .setCreateBy(userId)
                         .setMatnrCode(item.getMatnrCode());
                 for (PakinItem waitPakinItem : waitPakin.getItems()) {
                     if (waitPakinItem.getTrackCode().equals(item.getTrackCode())) {
-                        if (waitPakinItem.getReceiptQty() > item.getAnfme()) {
-                            throw new CoolException("缁勬嫋鏁伴噺涓嶈兘澶т簬鏀惰揣鏁伴噺锛侊紒");
+                        if (waitPakinItem.getReceiptQty() > item.getAnfme() || waitPakinItem.getReceiptQty().compareTo(0.0) <= 0) {
+                            throw new CoolException("缁勬嫋鏁伴噺涓嶈兘澶т簬鏀惰揣鏁伴噺涓斾笉鑳藉皬浜庨浂锛侊紒");
                         }
                         pakinItem.setAnfme(waitPakinItem.getReceiptQty()).setTrackCode(waitPakinItem.getTrackCode());
                     }
@@ -179,6 +184,9 @@
         if (!this.updateById(waitPakin1)) {
             throw new CoolException("缁勬嫋鏁伴噺淇敼澶辫触锛侊紒");
         }
+
+        //TODO 缁勬嫋瀹屾垚鍚庯紝鎵e噺鏀惰揣鍖哄簱瀛�
+
         return pakin;
     }
 

--
Gitblit v1.9.1