From a76e1d17d67641993dea6335cb8e1465a94df58d Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期四, 21 五月 2026 15:39:05 +0800
Subject: [PATCH] feat(stock): 优化库存管理和成品树结构功能 1- 为ApproveProcessMapper.xml和ProductBomMapper.xml添加排序功能 2- 在ProductionProductMainDto中新增bomInputQty字段用于产品结构投入数量 3- 修改ProductionProductMainServiceImpl中投入数量计算逻辑,使用前端传入的bomInputQty值 4- 在ProductWorkOrderDto中添加bomInputQty字段并在服务实现中计算标准投入数量 5- 更新SalesLedgerMapper.xml查询逻辑,从product_summary获取电压信息 6- 为SalesLedgerProduct添加stockId字段并修改库存扣减逻辑使用具体库存ID 7- 重构StockInventoryController中的成品库存树查询接口和导入导出功能 8- 新增成品和非成品库存导入导出的数据模型和Excel工具类 9- 优化StockInventoryServiceImpl中的库存扣减逻辑,支持按特定库存ID操作 10- 更新库存导入导出功能,区分成品和非成品类型并提供相应模板
---
src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java | 21 ++++++++++++---------
1 files changed, 12 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
index bdd83b0..3e7bc29 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
@@ -304,7 +304,7 @@
int tableStart = 10;
Row headerRow = sheet.createRow(tableStart);
- headerRow.setHeightInPoints((short)18);
+ headerRow.setHeightInPoints((short) 18);
String[] headers = {"搴忓彿", "鐗╂枡缂栧彿", "鍝佸悕/瑙勬牸", "鍗曚綅", "鏁伴噺", "璁㈠崟鍙�", "鍏卞洓鑱�"};
for (int i = 0; i < headers.length; i++) {
@@ -334,7 +334,7 @@
for (int i = 0; i < productList.size(); i++) {
SalesLedgerProduct p = productList.get(i);
Row dataRow = sheet.createRow(currentRow++);
- dataRow.setHeightInPoints((short)18);
+ dataRow.setHeightInPoints((short) 18);
String materialCode = "";
if (p.getProductModelId() != null) {
@@ -370,7 +370,7 @@
for (int i = 0; i < needEmpty; i++) {
int seq = productList.size() + i;
Row dataRow = sheet.createRow(currentRow++);
- dataRow.setHeightInPoints((short)18);
+ dataRow.setHeightInPoints((short) 18);
for (int c = 0; c <= 5; c++) dataRow.createCell(c).setCellStyle(dataCenterStyle);
@@ -389,12 +389,12 @@
// 鍚堣
Row totalRow = sheet.createRow(currentRow);
- totalRow.setHeightInPoints((short)18);
+ totalRow.setHeightInPoints((short) 18);
// 鍚堣鏀惧湪绗簩鍒楋紝涓嶅悎骞跺崟鍏冩牸
totalRow.createCell(1).setCellValue("鍚堣");
totalRow.createCell(4).setCellValue(totalQuantity.doubleValue());
-
+
// 璁剧疆鏍峰紡
for (int c = 0; c <= 5; c++) {
Cell cell = totalRow.getCell(c) != null ? totalRow.getCell(c) : totalRow.createCell(c);
@@ -606,7 +606,7 @@
}
@Override
- public IPage<SalesLedger> selectSalesLedgerListPage(Page page, SalesLedgerDto salesLedgerDto) {
+ public IPage<SalesLedgerDto> selectSalesLedgerListPage(Page page, SalesLedgerDto salesLedgerDto) {
return salesLedgerMapper.selectSalesLedgerListPage(page, salesLedgerDto);
}
@@ -1029,10 +1029,13 @@
salesLedgerProduct.setNoInvoiceAmount(salesLedgerProduct.getTaxInclusiveTotalPrice());
salesLedgerProduct.setPendingInvoiceTotal(salesLedgerProduct.getTaxInclusiveTotalPrice());
salesLedgerProductMapper.insert(salesLedgerProduct);
+
+ }
+ }
+ if (isProduce) {
+ for (SalesLedgerProduct salesLedgerProduct : products) {
// 娣诲姞鐢熶骇鏁版嵁
- if (isProduce) {
- salesLedgerProductServiceImpl.addProductionData(salesLedgerProduct);
- }
+ salesLedgerProductServiceImpl.addProductionData(salesLedgerProduct);
}
}
}
--
Gitblit v1.9.3