From 1fd7a7d67a5df84b57af4fbcc310aa66da3cd8ca Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期三, 25 三月 2026 17:51:16 +0800
Subject: [PATCH] feat:1.出入库单位转换 2.仓储/耗材导出字段值优化 3.仓储/耗材库存为0不展示

---
 src/main/java/com/ruoyi/stock/controller/StockOutRecordController.java |   35 +++++++++++++++++++++++++++++++----
 1 files changed, 31 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/ruoyi/stock/controller/StockOutRecordController.java b/src/main/java/com/ruoyi/stock/controller/StockOutRecordController.java
index 70bed1d..c213393 100644
--- a/src/main/java/com/ruoyi/stock/controller/StockOutRecordController.java
+++ b/src/main/java/com/ruoyi/stock/controller/StockOutRecordController.java
@@ -2,16 +2,22 @@
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.utils.bean.BeanUtils;
 import com.ruoyi.framework.aspectj.lang.annotation.Log;
 import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
 import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.stock.dto.StockInRecordDto;
 import com.ruoyi.stock.dto.StockOutRecordDto;
 import com.ruoyi.stock.service.StockOutRecordService;
+import com.ruoyi.stock.word.WeighbridgeDocGenerator;
+import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.*;
 
+import javax.servlet.http.HttpServletResponse;
 import java.util.List;
 
 /**
@@ -22,11 +28,14 @@
  * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
  * @since 2026-01-21 05:27:04
  */
+@Api(tags = "鍑哄簱")
 @RestController
 @RequestMapping("/stockOutRecord")
 public class StockOutRecordController {
     @Autowired
     private StockOutRecordService stockOutRecordService;
+    @Autowired
+    private WeighbridgeDocGenerator weighbridgeDocGenerator;
 
     @GetMapping("/listPage")
     @Log(title = "鐢熶骇鍑哄簱-鍑哄簱绠$悊-鍒楄〃", businessType = BusinessType.OTHER)
@@ -42,13 +51,24 @@
         return AjaxResult.success(stockOutRecordService.add(stockOutRecordDto));
     }
 
-    @PutMapping("/{id}")
-    @Log(title = "鍑哄簱绠$悊-鏇存柊鍑哄簱", businessType = BusinessType.UPDATE)
-    public AjaxResult update(@PathVariable("id") Long id, @RequestBody StockOutRecordDto stockOutRecordDto) {
-        return AjaxResult.success(stockOutRecordService.update(id, stockOutRecordDto));
+    @PostMapping("/editStockOut")
+    @PreAuthorize("@ss.hasPermi('dispatch_edit')")
+    @ApiOperation("缂栬緫鍑哄簱璁板綍")
+    public AjaxResult update(@RequestBody StockOutRecordDto stockOutRecordDto) {
+        if (stockOutRecordDto.getId() == null) {
+            return AjaxResult.error("鍑哄簱璁板綍ID涓嶈兘涓虹┖");
+        }
+        StockInRecordDto stockInRecordDto = new StockInRecordDto();
+        BeanUtils.copyProperties(stockOutRecordDto, stockInRecordDto);
+        stockInRecordDto.setStockInNum(stockOutRecordDto.getStockOutNum());
+        String absoluteDocPath = weighbridgeDocGenerator.generateWeighbridgeDoc(stockInRecordDto);
+        stockOutRecordDto.setWeighbridgeDocPath(absoluteDocPath);
+        stockOutRecordDto.setStockOutNum(stockOutRecordDto.getStockOutNum());
+        return AjaxResult.success(stockOutRecordService.updateById(stockOutRecordDto));
     }
 
     @DeleteMapping("")
+    @PreAuthorize("@ss.hasPermi('dispatch_cancel')")
     @Log(title = "鍑哄簱绠$悊-鍒犻櫎鍑哄簱", businessType = BusinessType.DELETE)
     public AjaxResult delete(@RequestBody List<Long> ids) {
         if(CollectionUtils.isEmpty(ids)){
@@ -56,4 +76,11 @@
         }
         return AjaxResult.success(stockOutRecordService.batchDelete(ids));
     }
+
+    @PostMapping("/exportStockOutRecord")
+    @ApiOperation("瀵煎嚭鍑哄簱璁板綍")
+    public void exportStockOutRecord(HttpServletResponse response, StockOutRecordDto stockOutRecordDto) {
+        stockOutRecordService.exportStockOutRecord(response,stockOutRecordDto);
+    }
+
 }

--
Gitblit v1.9.3