From cf65d0a608b21f07dc50a98b864dfe47def4f86b Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期一, 23 三月 2026 17:12:37 +0800
Subject: [PATCH] fix:1.产品删除 2.原材料展示 3.菜单优化 4.区分角色编辑删除

---
 src/main/java/com/ruoyi/stock/controller/StockOutRecordController.java |   33 +++++++++++++++++++++++++++++----
 1 files changed, 29 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 df82379..c213393 100644
--- a/src/main/java/com/ruoyi/stock/controller/StockOutRecordController.java
+++ b/src/main/java/com/ruoyi/stock/controller/StockOutRecordController.java
@@ -2,17 +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;
 
 /**
@@ -29,6 +34,8 @@
 public class StockOutRecordController {
     @Autowired
     private StockOutRecordService stockOutRecordService;
+    @Autowired
+    private WeighbridgeDocGenerator weighbridgeDocGenerator;
 
     @GetMapping("/listPage")
     @Log(title = "鐢熶骇鍑哄簱-鍑哄簱绠$悊-鍒楄〃", businessType = BusinessType.OTHER)
@@ -44,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)){
@@ -58,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