From 6d67e37ab96516f127e1635e92518109fd1c926c Mon Sep 17 00:00:00 2001
From: cl <1442464845@qq.com>
Date: 星期二, 21 四月 2026 14:06:11 +0800
Subject: [PATCH] 料箱码查询优化
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java | 32 +++++++++++++++++++++-----------
1 files changed, 21 insertions(+), 11 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java
index 5712e0a..8a16d7e 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java
@@ -45,13 +45,19 @@
PageParam<LocItem, BaseParam> pageParam = new PageParam<>(baseParam, LocItem.class);
// 搴撲綅鐘舵�佺瓫閫夛細鍏宠仈 man_loc锛屼笉鑳戒綔涓� man_loc_item 瀛楁鍙備笌 buildWrapper
Object useStatus = map.get("useStatus");
+ Object barcodeFilter = map.get("barcode");
if (pageParam.getWhere() != null && pageParam.getWhere().getMap() != null) {
pageParam.getWhere().getMap().remove("useStatus");
+ pageParam.getWhere().getMap().remove("barcode");
}
QueryWrapper<LocItem> wrapper = pageParam.buildWrapper(true);
if (useStatus != null && StringUtils.isNotBlank(useStatus.toString())) {
- String status = useStatus.toString().replace("'", "''");
- wrapper.apply("EXISTS (SELECT 1 FROM man_loc ml WHERE ml.id = man_loc_item.loc_id AND ml.use_status = '" + status + "' AND ml.deleted = 0)");
+ wrapper.apply("EXISTS (SELECT 1 FROM man_loc ml WHERE ml.id = man_loc_item.loc_id AND ml.use_status = {0} AND ml.deleted = 0)",
+ useStatus.toString().trim());
+ }
+ if (barcodeFilter != null && StringUtils.isNotBlank(barcodeFilter.toString())) {
+ wrapper.apply("EXISTS (SELECT 1 FROM man_loc ml WHERE ml.id = man_loc_item.loc_id AND ml.barcode = {0} AND ml.deleted = 0)",
+ barcodeFilter.toString().trim());
}
FieldsUtils.setFieldsFilters(wrapper, pageParam, LocItem.class);
@@ -69,6 +75,7 @@
if (loc != null) {
record.setLocUseStatus(loc.getUseStatus());
record.setLocUseStatus$(loc.getUseStatus$());
+ record.setBarcode(loc.getBarcode());
}
}
}
@@ -83,16 +90,18 @@
public R locUseOPage(@RequestBody Map<String, Object> map) {
BaseParam baseParam = buildParam(map, BaseParam.class);
PageParam<LocItem, BaseParam> pageParam = new PageParam<>(baseParam, LocItem.class);
+ Object barcodeFilter = map.get("barcode");
+ if (pageParam.getWhere() != null && pageParam.getWhere().getMap() != null) {
+ pageParam.getWhere().getMap().remove("barcode");
+ }
QueryWrapper<LocItem> locItemQueryWrapper = pageParam.buildWrapper(true);
- String applySql = String.format(
- "EXISTS (SELECT 1 FROM man_loc ml " +
- "WHERE ml.use_status = '%s'" +
- "AND ml.id = man_loc_item.loc_id " +
- "AND ml.deleted = 0" +
- ")",
- LocStsType.LOC_STS_TYPE_F.type
- );
- locItemQueryWrapper.apply(applySql);
+ if (barcodeFilter != null && StringUtils.isNotBlank(barcodeFilter.toString())) {
+ locItemQueryWrapper.apply("EXISTS (SELECT 1 FROM man_loc ml WHERE ml.id = man_loc_item.loc_id AND ml.barcode = {0} AND ml.deleted = 0)",
+ barcodeFilter.toString().trim());
+ }
+ locItemQueryWrapper.apply(
+ "EXISTS (SELECT 1 FROM man_loc ml WHERE ml.use_status = {0} AND ml.id = man_loc_item.loc_id AND ml.deleted = 0)",
+ LocStsType.LOC_STS_TYPE_F.type);
/**鎷兼帴鎵╁睍瀛楁*/
PageParam<LocItem, BaseParam> page = locItemService.page(pageParam, locItemQueryWrapper);
List<LocItem> records = page.getRecords();
@@ -106,6 +115,7 @@
if (loc != null) {
record.setLocUseStatus(loc.getUseStatus());
record.setLocUseStatus$(loc.getUseStatus$());
+ record.setBarcode(loc.getBarcode());
}
}
}
--
Gitblit v1.9.1