From 42b24af07f1ec2d1a375232d754128ba41d56f0a Mon Sep 17 00:00:00 2001
From: chen.lin <1442464845@qq.com>
Date: 星期四, 29 一月 2026 15:35:55 +0800
Subject: [PATCH] pda匹配单号
---
src/main/java/com/zy/asrs/controller/MaterialReceiveController.java | 65 ++++++++++++++++++++++++--------
1 files changed, 48 insertions(+), 17 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/MaterialReceiveController.java b/src/main/java/com/zy/asrs/controller/MaterialReceiveController.java
index b8f8348..e9e612e 100644
--- a/src/main/java/com/zy/asrs/controller/MaterialReceiveController.java
+++ b/src/main/java/com/zy/asrs/controller/MaterialReceiveController.java
@@ -41,24 +41,55 @@
@RequestParam(required = false) String condition,
@RequestParam(required = false) Boolean pdaQuery,
@RequestParam Map<String, Object> param) {
- EntityWrapper<MaterialReceive> wrapper = new EntityWrapper<>();
- excludeTrash(param);
- // 绉婚櫎pdaQuery鍙傛暟锛屽洜涓哄畠涓嶆槸鏁版嵁搴撳瓧娈碉紝鍙槸鎺у埗鍙傛暟
- param.remove("pdaQuery");
- convert(param, wrapper);
- allLike(MaterialReceive.class, param.keySet(), wrapper, condition);
-
- // 鍙傝�冨叾浠栧嚭搴撴ā鍧楋紝PDA鍑哄簱鏌ヨ鏃惰繃婊ゆ帀宸插叏閮ㄥ嚭搴撶殑鐗╂枡锛堝彧鏄剧ず杩樻湁鍓╀綑鏁伴噺鐨勶級
- // 閫氳繃 pdaQuery 鍙傛暟鍒ゆ柇鏄惁鏄疨DA鍑哄簱鏌ヨ
- if (pdaQuery != null && pdaQuery) {
- // PDA鍑哄簱鏌ヨ锛氬彧鏄剧ず鍓╀綑鏁伴噺澶т簬0鐨勮褰�
- wrapper.gt("remain_qty", 0);
+ try {
+ EntityWrapper<MaterialReceive> wrapper = new EntityWrapper<>();
+ excludeTrash(param);
+ // 绉婚櫎pdaQuery鍙傛暟锛屽洜涓哄畠涓嶆槸鏁版嵁搴撳瓧娈碉紝鍙槸鎺у埗鍙傛暟
+ param.remove("pdaQuery");
+
+ // 澶勭悊鐢熶骇鍗曞彿/浠诲姟鍗曞彿鐨勫涓�兼煡璇紙鐢▅鍒嗛殧锛�
+ if (param.containsKey("soCodeOrFbillno")) {
+ String soCodeOrFbillno = String.valueOf(param.get("soCodeOrFbillno"));
+ param.remove("soCodeOrFbillno");
+
+ // 鍒嗗壊澶氫釜鍊�
+ String[] codeArray = soCodeOrFbillno.split("\\|");
+ List<String> validCodes = new ArrayList<>();
+ for (String codeStr : codeArray) {
+ String code = codeStr.trim();
+ if (code.length() > 0) {
+ validCodes.add(code);
+ }
+ }
+
+ if (!validCodes.isEmpty()) {
+ // 鏋勫缓OR鏌ヨ鏉′欢
+ // 鏍煎紡锛歴o_code IN (value1, value2, ...) OR fbillno IN (value1, value2, ...)
+ wrapper.andNew()
+ .in("so_code", validCodes)
+ .or()
+ .in("fbillno", validCodes);
+ }
+ }
+
+ convert(param, wrapper);
+ allLike(MaterialReceive.class, param.keySet(), wrapper, condition);
+
+ // 鍙傝�冨叾浠栧嚭搴撴ā鍧楋紝PDA鍑哄簱鏌ヨ鏃惰繃婊ゆ帀宸插叏閮ㄥ嚭搴撶殑鐗╂枡锛堝彧鏄剧ず杩樻湁鍓╀綑鏁伴噺鐨勶級
+ // 閫氳繃 pdaQuery 鍙傛暟鍒ゆ柇鏄惁鏄疨DA鍑哄簱鏌ヨ
+ if (pdaQuery != null && pdaQuery) {
+ // PDA鍑哄簱鏌ヨ锛氬彧鏄剧ず鍓╀綑鏁伴噺澶т簬0鐨勮褰�
+ wrapper.gt("remain_qty", 0);
+ }
+
+ if (!Cools.isEmpty(orderByField)) {
+ wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));
+ }
+ return R.ok(materialReceiveService.selectPage(new Page<>(curr, limit), wrapper));
+ } catch (Exception e) {
+ e.printStackTrace();
+ return R.error("鏌ヨ澶辫触: " + e.getMessage());
}
-
- if (!Cools.isEmpty(orderByField)) {
- wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));
- }
- return R.ok(materialReceiveService.selectPage(new Page<>(curr, limit), wrapper));
}
@RequestMapping(value = "/materialReceive/batchSave/auth", method = RequestMethod.POST)
--
Gitblit v1.9.1