From 0bc2775e4fd776086c508fd7640bc3d61835cf73 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期一, 27 四月 2026 15:57:54 +0800
Subject: [PATCH] feat(ai): 添加审批待办助手功能
---
src/main/java/com/ruoyi/stock/controller/StockOutRecordController.java | 76 +++++++++++++++++++++++++++++++++++++-
1 files changed, 74 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/ruoyi/stock/controller/StockOutRecordController.java b/src/main/java/com/ruoyi/stock/controller/StockOutRecordController.java
index 8fff004..7351890 100644
--- a/src/main/java/com/ruoyi/stock/controller/StockOutRecordController.java
+++ b/src/main/java/com/ruoyi/stock/controller/StockOutRecordController.java
@@ -1,7 +1,20 @@
package com.ruoyi.stock.controller;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+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.StockOutRecordDto;
+import com.ruoyi.stock.service.StockOutRecordService;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import lombok.AllArgsConstructor;
+import org.springframework.util.CollectionUtils;
+import org.springframework.web.bind.annotation.*;
+
+import jakarta.servlet.http.HttpServletResponse;
+import java.util.List;
/**
* <p>
@@ -11,8 +24,67 @@
* @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
* @since 2026-01-21 05:27:04
*/
+@Tag(name = "鍑哄簱")
@RestController
@RequestMapping("/stockOutRecord")
+@AllArgsConstructor
public class StockOutRecordController {
+ private StockOutRecordService stockOutRecordService;
+
+ @GetMapping("/listPage")
+ @Log(title = "鐢熶骇鍑哄簱-鍑哄簱绠$悊-鍒楄〃", businessType = BusinessType.OTHER)
+ @Operation(summary = "鍑哄簱绠$悊鍒楄〃")
+ public AjaxResult listPage(Page page, StockOutRecordDto stockOutRecordDto) {
+ IPage<StockOutRecordDto> result = stockOutRecordService.listPage(page, stockOutRecordDto);
+ return AjaxResult.success(result);
+ }
+
+ @PostMapping("")
+ @Log(title = "鍑哄簱绠$悊-鏂板鍑哄簱", businessType = BusinessType.INSERT)
+ public AjaxResult add(@RequestBody StockOutRecordDto stockOutRecordDto) {
+ 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));
+ }
+
+ @DeleteMapping("")
+ @Log(title = "鍑哄簱绠$悊-鍒犻櫎鍑哄簱", businessType = BusinessType.DELETE)
+ public AjaxResult delete(@RequestBody List<Long> ids) {
+ if(CollectionUtils.isEmpty(ids)){
+ return AjaxResult.error("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�");
+ }
+ return AjaxResult.success(stockOutRecordService.batchDelete(ids));
+ }
+
+ @DeleteMapping("/pending")
+ @Log(title = "鍑哄簱绠$悊-鍒犻櫎寰呭鎵瑰嚭搴�", businessType = BusinessType.DELETE)
+ @Operation(summary = "鍒犻櫎寰呭鎵圭殑鍑哄簱璁板綍")
+ public AjaxResult deletePending(@RequestBody List<Long> ids) {
+ if(CollectionUtils.isEmpty(ids)){
+ return AjaxResult.error("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�");
+ }
+ return AjaxResult.success(stockOutRecordService.batchDeletePending(ids));
+ }
+
+ @PostMapping("/exportStockOutRecord")
+ @Operation(summary = "瀵煎嚭鍑哄簱璁板綍")
+ public void exportStockOutRecord(HttpServletResponse response, StockOutRecordDto stockOutRecordDto) {
+ stockOutRecordService.exportStockOutRecord(response,stockOutRecordDto);
+ }
+
+ @PostMapping("/approve")
+ @Log(title = "鍑哄簱绠$悊-瀹℃壒鍑哄簱", businessType = BusinessType.UPDATE)
+ @Operation(summary = "鎵归噺瀹℃壒鍑哄簱璁板綍")
+ public AjaxResult approve(@RequestBody StockOutRecordDto approveDto) {
+ if(CollectionUtils.isEmpty(approveDto.getIds())){
+ return AjaxResult.error("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�");
+ }
+ stockOutRecordService.batchApprove(approveDto.getIds(), approveDto.getApprovalStatus());
+ return AjaxResult.success();
+ }
}
--
Gitblit v1.9.3