From 1e7849282875b5bcd237d93f7b496aecb6ede4b6 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期一, 05 五月 2025 10:01:11 +0800
Subject: [PATCH] 1. 任务历史档报错问题修复 2. 单据添加收货单明细不显示问题修复

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

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyIsptItemServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyIsptItemServiceImpl.java
index ea34d24..04257e1 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyIsptItemServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyIsptItemServiceImpl.java
@@ -30,6 +30,7 @@
 
     @Autowired
     private QlyInspectService qlyInspectService;
+    @Autowired
     private AsnOrderItemService asnOrderItemService;
 
     /**
@@ -82,9 +83,23 @@
             items.forEach(qlyIsptItem -> {
                 AsnOrderItem orderItem = asnOrderItemService.getById(qlyIsptItem.getAsnItemId());
                 if (qlyIsptItem.getSafeQty().compareTo(orderItem.getAnfme()) >= 0.00) {
-                    orderItem.setIsptResult()
+                    orderItem.setIsptResult(QlyIsptResult.QLY_ISPT_RESULT_EXCELLENT.val)
+                            .setIsptStatus(QlyIsptStatus.QLY_ISPT_STAS_DONE.val);
+                } else if (qlyIsptItem.getSafeQty().compareTo(0.00) > 0.00 && qlyIsptItem.getSafeQty().compareTo(orderItem.getAnfme()) < 0.00) {
+                    orderItem.setIsptResult(QlyIsptResult.QLY_ISPT_RESULT_SECTION.val);
+                    if (Double.compare(qlyIsptItem.getSafeQty() + qlyIsptItem.getDisQty(), orderItem.getAnfme()) >= 0.00 ) {
+                        orderItem.setIsptStatus(QlyIsptStatus.QLY_ISPT_STAS_DONE.val);
+                    } else {
+                        orderItem.setIsptStatus(QlyIsptStatus.QLY_ISPT_STAS_ING.val);
+                    }
+                } else {
+                    orderItem.setIsptResult(QlyIsptResult.QLY_ISPT_RESULT_DEFECT.val)
+                            .setIsptStatus(QlyIsptStatus.QLY_ISPT_STAS_DONE.val);
                 }
 
+                if (!asnOrderItemService.updateById(orderItem)) {
+                    throw new CoolException("鏀惰揣鍗曟槑缁嗕慨鏀瑰け璐ワ紒锛�");
+                }
             });
             Double safeQty = items.stream().mapToDouble(QlyIsptItem::getSafeQty).sum();
             Double disQty = items.stream().mapToDouble(QlyIsptItem::getDisQty).sum();

--
Gitblit v1.9.1