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/controller/InvoiceRegistrationController.java |   43 +++++++++++++++++++++++++++++++++++++------
 1 files changed, 37 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/ruoyi/sales/controller/InvoiceRegistrationController.java b/src/main/java/com/ruoyi/sales/controller/InvoiceRegistrationController.java
index 00e1e88..5606148 100644
--- a/src/main/java/com/ruoyi/sales/controller/InvoiceRegistrationController.java
+++ b/src/main/java/com/ruoyi/sales/controller/InvoiceRegistrationController.java
@@ -1,13 +1,18 @@
 package com.ruoyi.sales.controller;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.framework.aspectj.lang.annotation.Log;
 import com.ruoyi.framework.web.domain.AjaxResult;
 import com.ruoyi.sales.dto.InvoiceRegistrationDto;
 import com.ruoyi.sales.dto.InvoiceRegistrationProductDto;
+import com.ruoyi.sales.dto.SalesLedgerDto;
 import com.ruoyi.sales.service.InvoiceRegistrationService;
+import io.jsonwebtoken.lang.Collections;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
+import javax.servlet.http.HttpServletResponse;
 import java.util.List;
 
 @RestController
@@ -18,13 +23,19 @@
     private InvoiceRegistrationService invoiceRegistrationService;
 
     /**
-     * 寮�绁ㄧ櫥璁版柊澧�
-     * @param invoiceRegistrationDto
+     * 寮�绁ㄧ櫥璁拌褰曟柊澧�
+     * @param salesLedgerDto
      * @return
      */
-    @PostMapping("/add")
-    public AjaxResult invoiceRegistrationAdd(@RequestBody InvoiceRegistrationDto invoiceRegistrationDto) {
-        invoiceRegistrationService.invoiceRegistrationAdd(invoiceRegistrationDto);
+    @PostMapping("/save")
+    @Log(title = "寮�绁ㄧ櫥璁�", businessType = com.ruoyi.framework.aspectj.lang.enums.BusinessType.INSERT)
+    @Transactional(rollbackFor = Exception.class)
+    public AjaxResult invoiceRegistrationSave(@RequestBody List<SalesLedgerDto> salesLedgerDto) {
+        if(Collections.isEmpty(salesLedgerDto)) return AjaxResult.error("璇烽�夋嫨瑕佷繚瀛樼殑璁板綍");
+        salesLedgerDto.forEach(item ->{
+            invoiceRegistrationService.invoiceRegistrationSave(item);
+        });
+
         return AjaxResult.success();
     }
 
@@ -34,7 +45,7 @@
      * @return
      */
     @DeleteMapping("/del")
-    public AjaxResult invoiceRegistrationDel(@RequestParam List<Integer> ids) {
+    public AjaxResult invoiceRegistrationDel(@RequestBody  List<Integer> ids) {
         invoiceRegistrationService.invoiceRegistrationDel(ids);
         return AjaxResult.success();
     }
@@ -70,4 +81,24 @@
     public AjaxResult invoiceRegistrationProductList(InvoiceRegistrationProductDto invoiceRegistrationProductDto) {
         return AjaxResult.success(invoiceRegistrationService.invoiceRegistrationProductList(invoiceRegistrationProductDto));
     }
+
+    /**
+     * 寮�绁ㄧ櫥璁颁骇鍝佽鎯�
+     * @param id
+     * @return
+     */
+    @GetMapping("/detail")
+    public AjaxResult invoiceRegistrationDetail(Integer id) {
+        return AjaxResult.success(invoiceRegistrationService.invoiceRegistrationDetail(id));
+    }
+
+    /**
+     * 寮�绁ㄧ櫥璁板鍑�
+     * @param response
+     * @param invoiceRegistrationDto
+     */
+    @PostMapping("/export")
+    public void invoiceRegistrationExport(HttpServletResponse response, InvoiceRegistrationDto invoiceRegistrationDto) {
+        invoiceRegistrationService.invoiceRegistrationExport(response, invoiceRegistrationDto);
+    }
 }

--
Gitblit v1.9.3