From 3e7ddfed8f28fda861710fda62cb485e393244c5 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期一, 12 五月 2025 08:13:48 +0800
Subject: [PATCH] no message

---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyInspectServiceImpl.java |   71 +++++++++++++++++++++--------------
 1 files changed, 43 insertions(+), 28 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 568cf81..1ca78d1 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,22 +1,18 @@
 package com.vincent.rsf.server.manager.service.impl;
 
 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.common.R;
 import com.vincent.rsf.framework.exception.CoolException;
 import com.vincent.rsf.server.manager.controller.params.IsptOrderParam;
 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.entity.*;
+import com.vincent.rsf.server.manager.enums.QlyIsptResult;
 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;
-import com.vincent.rsf.server.manager.service.AsnOrderService;
-import com.vincent.rsf.server.manager.service.QlyInspectService;
+import com.vincent.rsf.server.manager.service.*;
 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.apache.commons.lang3.StringUtils;
@@ -42,6 +38,12 @@
 
     @Autowired
     private QlyIsptItemService qlyIsptItemService;
+
+    @Autowired
+    private CompanysService companysService;
+
+    @Autowired
+    private WarehouseAreasItemService warehouseAreasItemService;
 
     @Override
     public List<AsnOrderItem> listByAsn(Map<String, Object> map) {
@@ -103,11 +105,18 @@
     * @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")) && StringUtils.isNotBlank(params.get("asnCode").toString()), AsnOrder::getCode, StringUtils.isNotBlank(params.get("asnCode").toString()) ? params.get("asnCode").toString() : null));
-        return asnOrders;
+    public List<WarehouseAreasItem> getUnInspect(Map<String, String> params) {
+        String code = params.get("asnCode");
+        List<WarehouseAreasItem> warehouseAreasItems = warehouseAreasItemService
+                .list(new QueryWrapper<WarehouseAreasItem>()
+                        .select("asn_id as id, SUM(anfme) anfme, SUM(qty) qty, area_id, area_name, asn_code, asn_id, splr_id, splr_batch")
+                        .eq(StringUtils.isNotBlank(code), "asn_code", code)
+                        .lambda()
+                        .isNull(WarehouseAreasItem::getIsptResult)
+                        .lt(WarehouseAreasItem::getWorkQty, 1)
+                        .lt(WarehouseAreasItem::getQty, 1)
+                .groupBy(WarehouseAreasItem::getAsnCode));
+        return warehouseAreasItems;
     }
 
     /**
@@ -124,15 +133,18 @@
         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, 0));
+        List<AsnOrder> asnOrders = asnOrderService.list(new LambdaQueryWrapper<AsnOrder>().in(AsnOrder::getId, param.getIds()));
         if (asnOrders.isEmpty()) {
             throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�");
         }
-        List<AsnOrderItem> orderItems = asnOrderItemService.list(new LambdaQueryWrapper<AsnOrderItem>().in(AsnOrderItem::getAsnId, param.getIds()));
-        if (orderItems.isEmpty()) {
-            throw new CoolException("鍗曟嵁鏄庣粏涓嶅瓨鍦紒锛�");
-        }
-        Map<Long, List<AsnOrderItem>> listMap = orderItems.stream().collect(Collectors.groupingBy(AsnOrderItem::getAsnId));
+//        List<AsnOrderItem> orderItems = asnOrderItemService.list(new LambdaQueryWrapper<AsnOrderItem>().in(AsnOrderItem::getAsnId, param.getIds()));
+//        if (orderItems.isEmpty()) {
+//            throw new CoolException("鍗曟嵁鏄庣粏涓嶅瓨鍦紒锛�");
+//        }
+
+        List<WarehouseAreasItem> orderItems = warehouseAreasItemService.list(new LambdaQueryWrapper<WarehouseAreasItem>()
+                .in(WarehouseAreasItem::getAsnId, param.getIds()));
+        Map<Long, List<WarehouseAreasItem>> listMap = orderItems.stream().collect(Collectors.groupingBy(WarehouseAreasItem::getAsnId));
         for (AsnOrder asnOrder : asnOrders) {
             QlyInspect inspect = new QlyInspect();
             String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_INSPECT_CODE, null);
@@ -146,23 +158,26 @@
                     .setAsnId(asnOrder.getId())
                     .setAsnCode(asnOrder.getCode());
             /**鑾峰彇鍗曟嵁鏄庣粏*/
-            List<AsnOrderItem> asnOrderItems = listMap.get(asnOrder.getId());
+            List<WarehouseAreasItem> asnOrderItems = listMap.get(asnOrder.getId());
             if (Objects.isNull(asnOrderItems) || asnOrderItems.isEmpty()) {
                 continue;
             }
-            double rcptQty = asnOrderItems.stream().mapToDouble(AsnOrderItem::getQty).sum();
-            double anfme = asnOrderItems.stream().mapToDouble(AsnOrderItem::getAnfme).sum();
-            inspect.setRcptQty(rcptQty).setDlyQty(anfme);
+            double anfme = asnOrderItems.stream().mapToDouble(WarehouseAreasItem::getAnfme).sum();
+            inspect.setRcptQty(anfme);
             if (!this.save(inspect)) {
                 throw new CoolException("鍗曟嵁" + asnOrder.getCode() + "淇濆瓨澶辫触锛侊紒");
             }
             List<QlyIsptItem> items = new ArrayList<>();
-            for (AsnOrderItem orderItem : asnOrderItems) {
+            for (WarehouseAreasItem orderItem : asnOrderItems) {
                 QlyIsptItem isptItem = new QlyIsptItem();
                 BeanUtils.copyProperties(orderItem, isptItem);
                 isptItem.setAsnItemId(orderItem.getId())
                         .setIspectId(inspect.getId())
-                        .setRcptQty(orderItem.getQty())
+                        .setRcptQty(orderItem.getAnfme())
+                        .setAnfme(0.0)
+                        .setFieldsIndex(orderItem.getFieldsIndex())
+                        .setSplrBatch(orderItem.getSplrBatch())
+                        .setSplrName(orderItem.getSplrId$())
                         .setCreateBy(loginUserId)
                         .setDlyQty(orderItem.getAnfme());
                 items.add(isptItem);
@@ -171,9 +186,9 @@
                 throw new CoolException("鏄庣粏淇濆瓨澶辫触锛侊紒");
             }
         }
-        if (!asnOrderService.update(new LambdaUpdateWrapper<AsnOrder>().in(AsnOrder::getId, param.getIds()).set(AsnOrder::getNtyStatus, 1))) {
-            throw new CoolException("鎶ユ鐘舵�佷慨鏀瑰け璐ワ紒锛�");
-        }
+//        if (!asnOrderService.update(new LambdaUpdateWrapper<AsnOrder>().in(AsnOrder::getId, param.getIds()))) {
+//            throw new CoolException("鎶ユ鐘舵�佷慨鏀瑰け璐ワ紒锛�");
+//        }
         return R.ok("淇濆瓨鎴愬姛锛侊紒");
     }
 

--
Gitblit v1.9.1