From 6f4f866484c956cfbe3de3d4d60a723d4f2ba6c7 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期三, 30 四月 2025 17:03:24 +0800
Subject: [PATCH] no message

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

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyInspectServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyInspectServiceImpl.java
index 9697614..568cf81 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyInspectServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyInspectServiceImpl.java
@@ -1,6 +1,7 @@
 package com.vincent.rsf.server.manager.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.vincent.rsf.framework.common.R;
 import com.vincent.rsf.framework.exception.CoolException;
 import com.vincent.rsf.server.manager.controller.params.IsptOrderParam;
@@ -8,6 +9,7 @@
 import com.vincent.rsf.server.manager.entity.AsnOrder;
 import com.vincent.rsf.server.manager.entity.AsnOrderItem;
 import com.vincent.rsf.server.manager.entity.QlyIsptItem;
+import com.vincent.rsf.server.manager.enums.QlyIsptStatus;
 import com.vincent.rsf.server.manager.mapper.QlyInspectMapper;
 import com.vincent.rsf.server.manager.entity.QlyInspect;
 import com.vincent.rsf.server.manager.service.AsnOrderItemService;
@@ -100,23 +102,29 @@
     * @return
     * @time 2025/3/31 10:12
     */
-
     @Override
     public List<AsnOrder> getUnInspect(Map<String, Object> params) {
         List<AsnOrder> asnOrders = asnOrderService.list(new LambdaQueryWrapper<AsnOrder>()
                 .eq(AsnOrder::getStatus, 1)
-                .eq(!Objects.isNull(params.get("asnCode")), AsnOrder::getCode, !Objects.isNull(params.get("asnCode")) ? params.get("asnCode").toString() : "")
-                .eq(AsnOrder::getNtyStatus, 0));
+                .eq(!Objects.isNull(params.get("asnCode")) && StringUtils.isNotBlank(params.get("asnCode").toString()), AsnOrder::getCode, StringUtils.isNotBlank(params.get("asnCode").toString()) ? params.get("asnCode").toString() : null));
         return asnOrders;
     }
 
+    /**
+    * @author Ryan
+    * @description 淇濆瓨
+    * @param
+    * @return
+    * @time 2025/3/31 14:54
+    */
+
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public R saveSelected(IsptOrderParam param) {
+    public R saveSelected(IsptOrderParam param, Long loginUserId) {
         if (Objects.isNull(param.getIds()) || param.getIds().isEmpty()) {
             throw new CoolException("鍗曟嵁ID涓嶈兘涓虹┖锛侊紒");
         }
-        List<AsnOrder> asnOrders = asnOrderService.list(new LambdaQueryWrapper<AsnOrder>().in(AsnOrder::getId, param.getIds()).eq(AsnOrder::getNtyStatus, 1));
+        List<AsnOrder> asnOrders = asnOrderService.list(new LambdaQueryWrapper<AsnOrder>().in(AsnOrder::getId, param.getIds()).eq(AsnOrder::getNtyStatus, 0));
         if (asnOrders.isEmpty()) {
             throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�");
         }
@@ -125,14 +133,18 @@
             throw new CoolException("鍗曟嵁鏄庣粏涓嶅瓨鍦紒锛�");
         }
         Map<Long, List<AsnOrderItem>> listMap = orderItems.stream().collect(Collectors.groupingBy(AsnOrderItem::getAsnId));
-        List<QlyInspect> qlyInspects = new ArrayList<>();
         for (AsnOrder asnOrder : asnOrders) {
             QlyInspect inspect = new QlyInspect();
             String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_INSPECT_CODE, null);
             if (StringUtils.isBlank(ruleCode)) {
                 throw new CoolException("绛栫暐閿欒锛氳妫�鏌ョ瓥鐣ャ��" + SerialRuleCode.SYS_INSPECT_CODE + "銆嶆槸鍚﹁缃纭紒锛�");
             }
-            inspect.setCode(ruleCode).setWkType(asnOrder.getWkType()).setAsnId(asnOrder.getId()).setCode(asnOrder.getCode());
+            inspect.setCode(ruleCode)
+                    .setWkType(asnOrder.getWkType())
+                    .setIsptStatus(QlyIsptStatus.QLY_ISPT_STAS_ING.val)
+                    .setCreateBy(loginUserId)
+                    .setAsnId(asnOrder.getId())
+                    .setAsnCode(asnOrder.getCode());
             /**鑾峰彇鍗曟嵁鏄庣粏*/
             List<AsnOrderItem> asnOrderItems = listMap.get(asnOrder.getId());
             if (Objects.isNull(asnOrderItems) || asnOrderItems.isEmpty()) {
@@ -149,7 +161,9 @@
                 QlyIsptItem isptItem = new QlyIsptItem();
                 BeanUtils.copyProperties(orderItem, isptItem);
                 isptItem.setAsnItemId(orderItem.getId())
+                        .setIspectId(inspect.getId())
                         .setRcptQty(orderItem.getQty())
+                        .setCreateBy(loginUserId)
                         .setDlyQty(orderItem.getAnfme());
                 items.add(isptItem);
             }
@@ -157,9 +171,28 @@
                 throw new CoolException("鏄庣粏淇濆瓨澶辫触锛侊紒");
             }
         }
-        if (!this.saveBatch(qlyInspects)) {
-            throw new CoolException("璐ㄦ鍗曚繚瀛樺け璐ワ紒锛�");
+        if (!asnOrderService.update(new LambdaUpdateWrapper<AsnOrder>().in(AsnOrder::getId, param.getIds()).set(AsnOrder::getNtyStatus, 1))) {
+            throw new CoolException("鎶ユ鐘舵�佷慨鏀瑰け璐ワ紒锛�");
         }
         return R.ok("淇濆瓨鎴愬姛锛侊紒");
     }
+
+    @Override
+    public boolean qlySave(QlyInspect qlyInspect) {
+        String code = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_INSPECT_CODE, qlyInspect);
+        if (Objects.isNull(code) || StringUtils.isBlank(code)) {
+            throw new CoolException("缂栫爜瑙勫垯閿欒锛�" + "璇锋鏌ョ紪鐮侊細" + "銆孲YS_INSPECT_CODE銆�" + "鏄惁璁剧疆鎴愬姛锛侊紒");
+        }
+        qlyInspect.setCode(code);
+        if (Objects.isNull(qlyInspect.getAsnCode()) || StringUtils.isBlank(qlyInspect.getAsnCode())) {
+            throw new CoolException("鏀惰揣鍗曞彿涓嶈兘涓虹┖锛侊紒");
+        }
+        AsnOrder asnOrder = asnOrderService.getOne(new LambdaQueryWrapper<AsnOrder>().eq(AsnOrder::getId, qlyInspect.getAsnCode()));
+        if (Objects.isNull(asnOrder)) {
+            throw new CoolException("鏀惰揣鍗曚笉瀛樺湪锛侊紒");
+        }
+        qlyInspect.setAsnCode(asnOrder.getCode()).setAsnId(asnOrder.getId());
+
+        return this.save(qlyInspect);
+    }
 }

--
Gitblit v1.9.1