From bb99f3d2bd880fc4bea36efa8f9fb041b483f279 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期一, 09 九月 2024 14:38:33 +0800
Subject: [PATCH] #

---
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java |   67 +++++++++++++++++++++++++++++++++
 1 files changed, 66 insertions(+), 1 deletions(-)

diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java
index bdd232c..24d9fe8 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java
@@ -14,6 +14,7 @@
 import com.zy.asrs.common.wms.service.LocDetlService;
 import com.zy.asrs.common.wms.service.MatService;
 import com.zy.asrs.framework.annotations.ManagerAuth;
+import com.zy.asrs.framework.common.BaseRes;
 import com.zy.asrs.framework.common.Cools;
 import com.zy.asrs.framework.common.R;
 import com.zy.asrs.framework.domain.KeyValueVo;
@@ -97,6 +98,20 @@
 
     private <T> void convert(Map<String, Object> map, QueryWrapper<T> wrapper){
         for (Map.Entry<String, Object> entry : map.entrySet()){
+            if(Cools.eq(entry.getKey(),"curr")
+                    || Cools.eq(entry.getKey(),"limit")
+                    || Cools.eq(entry.getKey(),"unreason")
+                    || Cools.eq(entry.getKey(),"orderByField")
+                    || Cools.eq(entry.getKey(),"orderByType")
+                    || Cools.eq(entry.getKey(),"row")
+                    || Cools.eq(entry.getKey(),"condition")){
+                continue;
+            }
+
+            if(Cools.isEmpty(entry.getValue())){
+                continue;
+            }
+
             String val = String.valueOf(entry.getValue());
             if (val.contains(RANGE_TIME_LINK)){
                 String[] dates = val.split(RANGE_TIME_LINK);
@@ -116,10 +131,35 @@
     @ManagerAuth
     public R page(@RequestParam(defaultValue = "1") Integer curr,
                   @RequestParam(defaultValue = "10") Integer limit,
+                  @RequestParam(required = false)String orderByField,
+                  @RequestParam(required = false)String orderByType,
                   @RequestParam(required = false) String condition,
                   @RequestParam(required = false) String timeRange,
                   @RequestParam Map<String, Object> param) {
         QueryWrapper<LocDetl> wrapper = new QueryWrapper<>();
+        Object barcode = null;
+        if (!Cools.isEmpty(param.get("barcode"))) {
+            barcode = param.get("barcode");
+        }
+        param.remove("zpallet");
+        param.remove("barcode");
+
+        if (!Cools.isEmpty(param.get("decrees"))) {
+            ArrayList<String> mats = new ArrayList<>();
+            List<Mat> decrees = matService.list(new LambdaQueryWrapper<Mat>().like(Mat::getDecrees, param.get("decrees")));
+            if (decrees.isEmpty()) {
+                mats.add("-1");
+            }else {
+                for (Mat mat : decrees) {
+                    mats.add(mat.getMatnr());
+                }
+            }
+
+            wrapper.in("matnr", mats);
+            param.remove("decrees");
+        }
+
+        convert(param,wrapper);
         wrapper.eq("host_id", getHostId());
 //        if (!Cools.isEmpty(condition)) {
 //            wrapper.like(LocDetl::getLocNo, condition);
@@ -132,14 +172,39 @@
         if (!Cools.isEmpty(param.get("locNo"))) {
             wrapper.eq("loc_no", param.get("locNo"));
         }
+
+        if (!Cools.isEmpty(barcode)) {
+            wrapper.eq("zpallet", barcode);
+        }
+
+        if (!Cools.isEmpty(orderByField)){
+            wrapper.orderBy(true, "asc".equals(orderByType), humpToLine(orderByField));
+        }
+
+
+
         param.remove("locNo");
         param.remove("owner");
-        param.remove("zpallet");
         param.remove("matnr");
         allLike(LocDetl.class, param.keySet(), wrapper, condition);
         return R.ok(locDetlService.page(new Page<>(curr, limit), wrapper));
     }
 
+    @RequestMapping(value = "/locDetl/auth")
+    @ManagerAuth
+    public R stockOutList(@RequestParam(value = "locNos[]") List<String> locNos){
+        if (!locNos.isEmpty()) {
+            List<LocDetl> res = new ArrayList<>();
+            for (String locNo : new HashSet<>(locNos)) {
+                List<LocDetl> locDetls = locDetlService.list(new LambdaQueryWrapper<LocDetl>().eq(LocDetl::getLocNo, locNo));
+                if (!locDetls.isEmpty()) {
+                    res.addAll(locDetls);
+                }
+            }
+            return R.ok().add(res);
+        }
+        return R.parse(BaseRes.EMPTY);
+    }
 
     @RequestMapping(value = "/locDetl/add/auth")
     @ManagerAuth

--
Gitblit v1.9.1