From 02f6db3f1842f5a830e6ed00aebe6ccd917e76c4 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期四, 06 十一月 2025 12:55:05 +0800
Subject: [PATCH] 即时库存功能优化
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WarehouseStockController.java | 31 ++++++++++++++++++++++++-------
1 files changed, 24 insertions(+), 7 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..a4c74da 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
@@ -11,11 +11,11 @@
import com.vincent.rsf.server.manager.controller.params.WarehouseStockParam;
import com.vincent.rsf.server.manager.entity.StockItem;
import com.vincent.rsf.server.manager.entity.ViewStockManage;
-import com.vincent.rsf.server.manager.entity.WarehouseAreasItem;
import com.vincent.rsf.server.manager.enums.ViewStockType;
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;
@@ -35,8 +35,7 @@
@Autowired
private WarehouseStockService warehouseStockService;
-
- @PreAuthorize("hasAuthority('manager:locItem:list')")
+// @PreAuthorize("hasAuthority('manager:locItem:list')")
@PostMapping("/page")
public R page(@RequestBody Map<String, Object> param) {
if (Objects.isNull(param)) {
@@ -60,17 +59,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 +142,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