From 9cf4ac9c3f8301f5697f6d12ac4bf32855f0b044 Mon Sep 17 00:00:00 2001
From: yangyang
Date: 星期一, 17 三月 2025 07:54:10 +0800
Subject: [PATCH] #新增 添加质检单管理

---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyInspectServiceImpl.java |   78 +++++++++++++++++++++++++++++++++++++++
 1 files changed, 78 insertions(+), 0 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 25066c9..73eeacb 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,12 +1,90 @@
 package com.vincent.rsf.server.manager.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.vincent.rsf.framework.common.R;
+import com.vincent.rsf.framework.exception.CoolException;
+import com.vincent.rsf.server.manager.controller.params.QlyInspectAndItem;
+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.mapper.QlyInspectMapper;
 import com.vincent.rsf.server.manager.entity.QlyInspect;
+import com.vincent.rsf.server.manager.service.AsnOrderItemService;
+import com.vincent.rsf.server.manager.service.AsnOrderService;
 import com.vincent.rsf.server.manager.service.QlyInspectService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.vincent.rsf.server.manager.service.QlyIsptItemService;
+import com.vincent.rsf.server.system.constant.SerialRuleCode;
+import com.vincent.rsf.server.system.utils.SerialRuleUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
 
 @Service("qlyInspectService")
 public class QlyInspectServiceImpl extends ServiceImpl<QlyInspectMapper, QlyInspect> implements QlyInspectService {
 
+    @Autowired
+    private AsnOrderItemService asnOrderItemService;
+
+    @Autowired
+    private AsnOrderService asnOrderService;
+
+    @Autowired
+    private QlyIsptItemService qlyIsptItemService;
+
+    @Override
+    public List<AsnOrderItem> listByAsn(Map<String, Object> map) {
+        if (Objects.isNull(map.get("asnCode"))) {
+            throw new CoolException("鏀惰揣鍗曟嵁鏄庣粏缂栫爜涓嶈兘涓虹┖锛侊紒");
+        }
+        AsnOrder asnOrder = asnOrderService.getOne(new LambdaQueryWrapper<AsnOrder>()
+                .eq(AsnOrder::getCode, map.get("asnCode"))
+                .ne(AsnOrder::getNtyStatus, 0));
+        if (Objects.isNull(asnOrder)) {
+            throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�");
+        }
+        List<AsnOrderItem> asnOrderItems = asnOrderItemService.list(new LambdaQueryWrapper<AsnOrderItem>()
+                .eq(AsnOrderItem::getAsnCode, map.get("asnCode"))
+                .eq(AsnOrderItem::getNtyStatus, 1));
+        if (asnOrderItems.isEmpty()) {
+            return new ArrayList<>();
+        }
+        return asnOrderItems;
+    }
+
+    @Override
+    public R allSave(QlyInspectAndItem params) {
+        if (Objects.isNull(params.getQlyInspect())) {
+            throw new CoolException("璐ㄦ鍗曟嵁涓嶈兘涓虹┖锛侊紒");
+        }
+        QlyInspect inspect = params.getQlyInspect();
+        if (Objects.isNull(inspect.getWkType())) {
+            throw new CoolException("涓氬姟绫诲瀷涓嶈兘涓虹┖锛侊紒");
+        }
+        String code = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_INSPECT_WK_TYPE, inspect);
+        inspect.setCode(code);
+        if (!this.saveOrUpdate(inspect)) {
+            throw new CoolException("璐ㄦ鍗曚繚瀛樺け璐ワ紒锛�");
+        }
+        List<QlyIsptItem> isptItems = params.getQlyIsptItems();
+        if (isptItems.isEmpty()) {
+            return R.ok("淇濆瓨鎴愬姛锛侊紒");
+        }
+        List<QlyIsptItem> items = new ArrayList<>();
+        for (QlyIsptItem isptItem : isptItems) {
+            if (Objects.isNull(isptItem.getMatnrCode())) {
+                continue;
+            }
+            isptItem.setIspectId(inspect.getId());
+            items.add(isptItem);
+        }
+        if (!qlyIsptItemService.saveOrUpdateBatch(items)) {
+            throw new CoolException("璐ㄦ鏄庣粏淇濆瓨澶辫触锛侊紒");
+        }
+        return R.ok("淇濆瓨鎴愬姛锛侊紒");
+    }
 }

--
Gitblit v1.9.1