From d3c56998e36904283c867ba7cc3a9249c5f85297 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期四, 06 十一月 2025 13:25:58 +0800
Subject: [PATCH] 即时库存功能优化
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WarehouseStockController.java | 27 +++++++++++++++++++++++----
1 files changed, 23 insertions(+), 4 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WarehouseStockController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WarehouseStockController.java
index 58724db..94e341c 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WarehouseStockController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WarehouseStockController.java
@@ -16,6 +16,7 @@
import com.vincent.rsf.server.manager.service.WarehouseStockService;
import com.vincent.rsf.server.system.controller.BaseController;
import io.swagger.annotations.Api;
+import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.PostMapping;
@@ -60,17 +61,22 @@
} else {
wrapper.groupBy("matnr_id");
}
+ wrapper.eq(!Objects.isNull(param.get("matnrCode")), "matnr_code", param.get("matnrCode"));
FieldsUtils.setFieldsFilters(wrapper, pageParam, ViewStockManage.class);
+
IPage<ViewStockManage> pageResult = warehouseStockService.pageByStock(pageParam, wrapper);
+
+
List<ViewStockManage> records = pageResult.getRecords();
- for (ViewStockManage record : records) {
+
+ records.forEach(record -> {
if (!Objects.isNull(record.getFieldsIndex())) {
Map<String, String> fields = FieldsUtils.getFields(record.getFieldsIndex());
record.setExtendFields(fields);
}
- }
+ });
pageResult.setRecords(records);
return R.ok(pageResult);
@@ -138,12 +144,25 @@
} else if (type.equals(ViewStockType.VIEW_STOCK_TYPE_WAREHOUSE.val)) {
wrapper.eq(ViewStockManage::getWarehouse, stock.getWarehouse());
} else if (type.equals(ViewStockType.VIEW_STOCK_TYPE_FIELDSINDEX.val)) {
- wrapper.eq(ViewStockManage::getFieldsIndex, stock.getFieldsIndex());
+ if (StringUtils.isBlank(stock.getFieldsIndex())) {
+ wrapper.isNull(ViewStockManage::getFieldsIndex);
+ } else {
+ wrapper.eq(ViewStockManage::getFieldsIndex, stock.getFieldsIndex());
+ }
} else {
wrapper.eq(ViewStockManage::getMatnrCode, stock.getMatnrCode());
}
+ PageParam<ViewStockManage, BaseParam> result = warehouseStockService.page(pageParam, wrapper);
+ List<ViewStockManage> records = result.getRecords();
+ records.forEach(record -> {
+ if (!Objects.isNull(record.getFieldsIndex())) {
+ Map<String, String> fields = FieldsUtils.getFields(record.getFieldsIndex());
+ record.setExtendFields(fields);
+ }
+ });
+ result.setRecords(records);
- return R.ok(warehouseStockService.page(pageParam, wrapper));
+ return R.ok(result);
}
}
--
Gitblit v1.9.1