From 13bdad370f0b35b68f79a75f8183a23135e45225 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期二, 15 七月 2025 17:03:10 +0800
Subject: [PATCH] 1

---
 src/main/java/com/zy/asrs/controller/OrderController.java |   86 ++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 76 insertions(+), 10 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OrderController.java b/src/main/java/com/zy/asrs/controller/OrderController.java
index c96b978..a459112 100644
--- a/src/main/java/com/zy/asrs/controller/OrderController.java
+++ b/src/main/java/com/zy/asrs/controller/OrderController.java
@@ -14,6 +14,7 @@
 import com.zy.asrs.service.*;
 import com.zy.common.model.DetlDto;
 import com.zy.common.web.BaseController;
+import com.zy.system.service.ConfigService;
 import lombok.Synchronized;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
@@ -58,6 +59,8 @@
     private AgvLocDetlService agvLocDetlService;
     @Autowired
     private FlowLogService flowLogService;
+    @Autowired
+    private ConfigService configService;
 
     @GetMapping("/doc/type/list")
     @Transactional
@@ -228,16 +231,28 @@
         EntityWrapper<OrderDetl> wrapper = new EntityWrapper<>();
         excludeTrash(param);
         Object o = param.get("orderType");
+        param.remove("orderType");
+        convert(param, wrapper);
         if (o != null) {
             String[] split = o.toString().split(",");
             if (split[0].equals("39")) {
-                wrapper.andNew().like("matnr", "401", SqlLike.RIGHT).or().like("matnr", "402", SqlLike.RIGHT).andNew().in("source", split);
+                //wrapper.andNew().like("matnr", "401", SqlLike.RIGHT).or().like("matnr", "402", SqlLike.RIGHT).andNew().in("source", split);
+                wrapper.in("source", split);
+                List<String> m = configService.getMatCode();
+                if (!Cools.isEmpty(m)) {
+                    for (int i = 0; i < m.size(); i++) {
+                        if (i == 0) {
+                            wrapper.andNew().like("matnr", m.get(i), SqlLike.RIGHT);
+                        } else {
+                            wrapper.or().like("matnr", m.get(i), SqlLike.RIGHT);
+                        }
+                    }
+                }
             } else {
                 wrapper.in("source", split);
             }
-            param.remove("orderType");
         }
-        convert(param, wrapper);
+
 //        List<DocType> pakins = docTypeService.selectList(new EntityWrapper<DocType>().eq("pakin", 1));
 //        List<Long> docIds = new ArrayList<>();
 //        for (DocType pakin : pakins) {
@@ -245,7 +260,8 @@
 //                docIds.add(pakin.getDocId());
 //            }
 //        }
-        return R.ok(orderDetlService.selectPage(new Page<>(curr, limit), wrapper));
+        Page<OrderDetl> orderDetlPage = orderDetlService.selectPage(new Page<>(curr, limit), wrapper);
+        return R.ok(orderDetlPage);
     }
 
 
@@ -307,8 +323,18 @@
                 docIds.add(pakin.getDocId());
             }
         }
-        wrapper.like("matnr", "50", SqlLike.RIGHT);
         wrapper.in("source", docIds);
+        List<String> m = configService.getMatCode2();
+        if (!Cools.isEmpty(m)) {
+            for (int i = 0; i < m.size(); i++) {
+                if (i == 0) {
+                    wrapper.andNew().like("matnr", m.get(i), SqlLike.RIGHT);
+                } else {
+                    wrapper.or().like("matnr", m.get(i), SqlLike.RIGHT);
+                }
+            }
+        }
+        //wrapper.like("matnr", "50", SqlLike.RIGHT);
         return R.ok(orderDetlService.selectPage(new Page<>(curr, limit), wrapper));
     }
 
@@ -353,8 +379,20 @@
                 docIds.add(pakin.getDocId());
             }
         }
-        wrapper.notLike("matnr", "401", SqlLike.RIGHT).notLike("matnr", "402", SqlLike.RIGHT);
+        //wrapper.notLike("matnr", "401", SqlLike.RIGHT).notLike("matnr", "402", SqlLike.RIGHT);
+        //wrapper.in("source", docIds);
+
         wrapper.in("source", docIds);
+        List<String> m = configService.getMatCode();
+        if (!Cools.isEmpty(m)) {
+            for (int i = 0; i < m.size(); i++) {
+                if (i == 0) {
+                    wrapper.andNew().notLike("matnr", m.get(i), SqlLike.RIGHT);
+                } else {
+                    wrapper.or().notLike("matnr", m.get(i), SqlLike.RIGHT);
+                }
+            }
+        }
         Page<OrderDetl> page = orderDetlService.selectPage(new Page<>(curr, limit), wrapper);
         for (OrderDetl record : page.getRecords()) {
             Double sumAnfme = agvLocDetlService.getSumAnfmeDb(record.getMatnr(), record.getThreeCode(), 1);
@@ -443,7 +481,14 @@
         Date now = new Date();
         if (param.getDocType() == 33) {
             for (OrderDetl orderDetl : param.getOrderDetlList()) {
-                if (orderDetl.getMatnr().startsWith("401") || orderDetl.getMatnr().startsWith("402")) {
+                boolean flag = false;
+                List<String> matCode = configService.getMatCode();
+                for (String s : matCode) {
+                    if (orderDetl.getMatnr().startsWith(s)) {
+                        flag = true;
+                    }
+                }
+                if (flag) {
                     param.setOrderNo("DC" + param.getOrderNo());
                     break;
                 }
@@ -568,7 +613,14 @@
         if (param.getDocType().intValue() == 32) {
             String ono = "DB";
             for (OrderDetl orderDetl : param.getOrderDetlList()) {
-                if (orderDetl.getMatnr().startsWith("401") || orderDetl.getMatnr().startsWith("402")) {
+                boolean flag2 = false;
+                List<String> matCode = configService.getMatCode();
+                for (String s : matCode) {
+                    if (orderDetl.getMatnr().startsWith(s)) {
+                        flag2 = true;
+                    }
+                }
+                if (flag2) {
                     ono = "DC";
                 }
             }
@@ -1203,7 +1255,14 @@
             // 鐢熸垚璋冩嫧鍗�
             if (docType.getDocId().intValue() == 32) {
                 String dbUuid;
-                if (!Cools.isEmpty(matnr) && (matnr.startsWith("401") || matnr.startsWith("402"))) {
+                boolean flag3 = false;
+                List<String> matCode = configService.getMatCode();
+                for (String s : matCode) {
+                    if (matnr.startsWith(s)) {
+                        flag3 = true;
+                    }
+                }
+                if (!Cools.isEmpty(matnr) && flag3) {
                     dbUuid = "DC" + odNo;
                 } else {
                     dbUuid = "DB" + odNo;
@@ -1474,7 +1533,14 @@
                 odNo += "_O";
             }
             if (docName.contains("璋冩嫧鍗�")) {
-                if (!Cools.isEmpty(matnr) && (matnr.startsWith("401") || matnr.startsWith("402"))) {
+                boolean flag6 = false;
+                List<String> matCode = configService.getMatCode();
+                for (String s : matCode) {
+                    if (matnr.startsWith(s)) {
+                        flag6 = true;
+                    }
+                }
+                if (!Cools.isEmpty(matnr) && flag6) {
                     odNo = "DC" + odNo;
                 } else {
                     odNo = "DB" + odNo;

--
Gitblit v1.9.1