From 44522f08bff3abc3c34c77215eacd2cb3a484a0d Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期三, 29 四月 2026 14:07:51 +0800
Subject: [PATCH] 双伸出库优先筛选浅库位的任务进行出库,浅库位任务不足二十个则补上深库位出库的任务

---
 src/main/java/com/zy/asrs/controller/WrkMastController.java |   23 ++++++++++++++++++++---
 1 files changed, 20 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/WrkMastController.java b/src/main/java/com/zy/asrs/controller/WrkMastController.java
index 7fa4e46..a5fa11f 100644
--- a/src/main/java/com/zy/asrs/controller/WrkMastController.java
+++ b/src/main/java/com/zy/asrs/controller/WrkMastController.java
@@ -11,6 +11,7 @@
 import com.core.common.DateUtils;
 import com.core.common.R;
 import com.zy.asrs.entity.WrkMast;
+import com.zy.asrs.service.LocMastService;
 import com.zy.asrs.service.WrkMastService;
 import com.zy.common.web.BaseController;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -23,6 +24,9 @@
 
     @Autowired
     private WrkMastService wrkMastService;
+
+    @Autowired
+    private LocMastService locMastService;
 
     @RequestMapping(value = "/wrkMast/{id}/auth")
     @ManagerAuth
@@ -61,7 +65,18 @@
                 wrapper.ge(entry.getKey(), DateUtils.convert(dates[0]));
                 wrapper.le(entry.getKey(), DateUtils.convert(dates[1]));
             } else {
-                wrapper.like(entry.getKey(), val);
+                if (entry.getKey().equals("loc_no") || entry.getKey().equals("source_loc_no")) {
+                    List<String> locNos = locMastService.selectLocNosByNoOrAlias(val);
+                    if (locNos.isEmpty()) {
+                        wrapper.eq(entry.getKey(), "__NO_MATCH__");
+                    } else {
+                        wrapper.in(entry.getKey(), locNos);
+                    }
+                } else if (entry.getKey().equals("area_id")) {
+                    wrapper.eq(entry.getKey(), val);
+                } else {
+                    wrapper.like(entry.getKey(), val);
+                }
             }
         }
     }
@@ -117,8 +132,10 @@
     @ManagerAuth
     public R query(String condition) {
         EntityWrapper<WrkMast> wrapper = new EntityWrapper<>();
-        wrapper.like("wrk_no", condition);
-        Page<WrkMast> page = wrkMastService.selectPage(new Page<>(0, 10), wrapper);
+        if (!Cools.isEmpty(condition)) {
+            wrapper.where("CAST(wrk_no AS VARCHAR(20)) LIKE {0}", "%" + condition + "%");
+        }
+        Page<WrkMast> page = wrkMastService.selectPage(new Page<>(1, 10), wrapper);
         List<Map<String, Object>> result = new ArrayList<>();
         for (WrkMast wrkMast : page.getRecords()){
             Map<String, Object> map = new HashMap<>();

--
Gitblit v1.9.1