From e711c834aec2293c53b07efe53e81e3573c289b6 Mon Sep 17 00:00:00 2001
From: 1 <1@123>
Date: 星期三, 01 四月 2026 11:42:44 +0800
Subject: [PATCH] lsh#

---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CheckOrderServiceImpl.java |   57 +++++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 45 insertions(+), 12 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CheckOrderServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CheckOrderServiceImpl.java
index aadcdc3..8067c39 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CheckOrderServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CheckOrderServiceImpl.java
@@ -12,6 +12,7 @@
 import com.vincent.rsf.server.manager.entity.*;
 import com.vincent.rsf.server.manager.entity.excel.CheckOrderTemplate;
 import com.vincent.rsf.server.manager.enums.*;
+import com.vincent.rsf.server.manager.mapper.BasStationTypeMapper;
 import com.vincent.rsf.server.manager.mapper.CheckOrderMapper;
 import com.vincent.rsf.server.manager.service.*;
 import com.vincent.rsf.server.system.constant.SerialRuleCode;
@@ -45,6 +46,12 @@
     private LocServiceImpl locService;
     @Autowired
     private TaskItemServiceImpl taskItemService;
+    @Autowired
+    private BasStationTypeMapper basStationTypeMapper;
+    @Autowired
+    private BasStationTypeServiceImpl basStationTypeService;
+    @Autowired
+    private BasStationServiceImpl basStationService;
 
     /**
      * @author Ryan
@@ -116,9 +123,13 @@
             }
             if (!items.isEmpty()) {
                 double purQty = items.stream().mapToDouble(WkOrderItem::getAnfme).sum();
-                if (!this.update(new LambdaUpdateWrapper<WkOrder>()
-                        .set(WkOrder::getExceStatus, CheckExceStatus.CHECK_ORDER_STATUS_UN_EXCE.val)
-                        .set(WkOrder::getAnfme, purQty).eq(WkOrder::getId, order.getId()))) {
+                WkOrder savedOrder = this.getById(order.getId());
+                if (Objects.isNull(savedOrder)) {
+                    throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�");
+                }
+                savedOrder.setExceStatus(CheckExceStatus.CHECK_ORDER_STATUS_UN_EXCE.val)
+                        .setAnfme(purQty);
+                if (!this.updateById(savedOrder)) {
                     throw new CoolException("鍗曟嵁鏁伴噺淇敼澶辫触锛侊紒");
                 }
             }
@@ -208,8 +219,18 @@
     @Override
     public R getSiteNos() {
         List<Integer> list = Arrays.asList(TaskType.TASK_TYPE_CHECK_OUT.type, TaskType.TASK_TYPE_CHECK_IN.type);
-        List<DeviceSite> sites = deviceSiteService.list(new LambdaQueryWrapper<DeviceSite>().in(DeviceSite::getType, list).groupBy(DeviceSite::getSite));
-        return R.ok().add(sites);
+//        List<DeviceSite> sites = deviceSiteService.list(new LambdaQueryWrapper<DeviceSite>().in(DeviceSite::getType, list).groupBy(DeviceSite::getSite));
+        List<BasStationType> basStationTypes = basStationTypeService.list(new LambdaQueryWrapper<BasStationType>().in(BasStationType::getTaskType, list));
+        List<BasStation>  basStations = new ArrayList<>();
+        for (BasStationType basStationType : basStationTypes) {
+            List<BasStation> basStationList = basStationService.list(new LambdaQueryWrapper<BasStation>().eq(BasStation::getStationTypeCode, basStationType.getStationTypeCode()));
+            if (basStationList == null || basStationList.isEmpty()) {
+                continue;
+            }
+            basStations.addAll(basStationList);
+        }
+
+        return R.ok().add(basStations);
     }
 
     /**
@@ -243,16 +264,28 @@
         List<LocItem> locItems = locItemService.listByMatnr(matnrs);
         if (!locItems.isEmpty()) {
             List<Integer> list = Arrays.asList(TaskType.TASK_TYPE_CHECK_OUT.type, TaskType.TASK_TYPE_CHECK_IN.type);
-            DeviceSite deviceSite = deviceSiteService.getOne(new LambdaQueryWrapper<DeviceSite>()
-                    .in(DeviceSite::getType, list)
-                    .groupBy(DeviceSite::getSite)
-                    .last("limit 1"));
-            if (Objects.isNull(deviceSite)) {
-                throw new CoolException("搴撳彛涓嶄负绌猴紒锛�");
+//            DeviceSite deviceSite = deviceSiteService.getOne(new LambdaQueryWrapper<DeviceSite>()
+//                    .in(DeviceSite::getType, list)
+//                    .groupBy(DeviceSite::getSite)
+//                    .last("limit 1"));
+
+            List<BasStationType> basStationTypes = basStationTypeService.list(new LambdaQueryWrapper<BasStationType>().in(BasStationType::getTaskType, list));
+            List<BasStation>  basStations = new ArrayList<>();
+            for (BasStationType basStationType : basStationTypes) {
+                List<BasStation> basStationList = basStationService.list(new LambdaQueryWrapper<BasStation>().eq(BasStation::getStationTypeCode, basStationType.getStationTypeCode()));
+                if (basStationList == null || basStationList.isEmpty()) {
+                    continue;
+                }
+                basStations.addAll(basStationList);
+            }
+            if (basStations.isEmpty()) {
+                throw new CoolException("搴撳彛涓虹┖锛侊紒");
             }
             locItems.forEach(locItem -> {
-                locItem.setSiteNo(deviceSite.getSite());
+                locItem.setSiteNo(basStations.get(0).getStationName());
             });
+
+//            return R.ok().add(basStations);
         }
         return R.ok().add(locItems);
     }

--
Gitblit v1.9.1