From a27fdf6b900e267eb84e1c6a5e1a693ee90d1274 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期四, 10 九月 2026 21:17:05 +0800
Subject: [PATCH] feat(stock): 添加库存报表导出功能并完善库存入库字段Excel注解

---
 src/main/java/com/ruoyi/stock/service/StockInventoryService.java          |    1 +
 src/main/java/com/ruoyi/stock/pojo/StockInRecord.java                     |    4 ++++
 src/main/java/com/ruoyi/stock/controller/StockInventoryController.java    |    6 ++++++
 src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java |    8 +++++++-
 src/main/java/com/ruoyi/stock/dto/StockInRecordDto.java                   |   10 ++++++++++
 5 files changed, 28 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/ruoyi/stock/controller/StockInventoryController.java b/src/main/java/com/ruoyi/stock/controller/StockInventoryController.java
index a0a9fa5..57cd2ae 100644
--- a/src/main/java/com/ruoyi/stock/controller/StockInventoryController.java
+++ b/src/main/java/com/ruoyi/stock/controller/StockInventoryController.java
@@ -124,6 +124,12 @@
         return R.ok(stockInventoryService.stockInventoryPage(stockInventoryDto,page));
     }
 
+    @PostMapping("/exportStockInventoryPage")
+    @Operation(summary = "搴撳瓨鎶ヨ〃瀵煎嚭")
+    public void exportStockInventoryPage(HttpServletResponse response, StockInventoryDto stockInventoryDto) {
+        stockInventoryService.exportStockInventoryPage(response,stockInventoryDto);
+    }
+
     @GetMapping("/stockInAndOutRecord")
     @Operation(summary = "缁熻鍚勪釜浜у搧鐨勫叆搴撳拰鍑哄簱璁板綍")
     public R stockInAndOutRecord(StockInventoryDto stockInventoryDto,Page page) {
diff --git a/src/main/java/com/ruoyi/stock/dto/StockInRecordDto.java b/src/main/java/com/ruoyi/stock/dto/StockInRecordDto.java
index f4f03ba..2f2c4b0 100644
--- a/src/main/java/com/ruoyi/stock/dto/StockInRecordDto.java
+++ b/src/main/java/com/ruoyi/stock/dto/StockInRecordDto.java
@@ -1,5 +1,7 @@
 package com.ruoyi.stock.dto;
 
+import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
+import com.ruoyi.framework.aspectj.lang.annotation.Excel;
 import com.ruoyi.stock.pojo.StockInRecord;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
@@ -8,30 +10,37 @@
 
 
 @Data
+@ExcelIgnoreUnannotated
 public class StockInRecordDto extends StockInRecord {
     /**
      * 浜у搧鍚嶇О
      */
+    @Excel(name = "浜у搧鍚嶇О")
     private String productName;
     /**
      * 浜у搧瑙勬牸
      */
+    @Excel(name = "浜у搧瑙勬牸")
     private String model;
     /**
      * 鎵规鍙�
      */
+    @Excel(name = "鎵规鍙�")
     private String batchNo;
 
     /**
      * 浜у搧鍗曚綅
      */
+    @Excel(name = "浜у搧鍗曚綅")
     private String unit;
 
     private String timeStr;
 
+    @Excel(name = "鍏ュ簱浜�")
     private String createBy;
 
     //鐜板瓨閲�
+    @Excel(name = "鐜板瓨閲�")
     private String currentStock;
 
     @Schema(description = "椤堕儴鐖朵骇鍝乮d")
@@ -41,6 +50,7 @@
     private List<Long> ids;
 
     @Schema(description = "婧愬崟鍙�")
+    @Excel(name = "婧愬崟鍙�")
     private String sourceOrderNo;
 
 }
diff --git a/src/main/java/com/ruoyi/stock/pojo/StockInRecord.java b/src/main/java/com/ruoyi/stock/pojo/StockInRecord.java
index f9525ee..097c5f9 100644
--- a/src/main/java/com/ruoyi/stock/pojo/StockInRecord.java
+++ b/src/main/java/com/ruoyi/stock/pojo/StockInRecord.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.annotation.*;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.ruoyi.common.enums.ReviewStatusEnum;
+import com.ruoyi.framework.aspectj.lang.annotation.Excel;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
 import org.springframework.format.annotation.DateTimeFormat;
@@ -26,9 +27,11 @@
     private Long id;
 
     @Schema(description = "鍏ュ簱鎵规")
+    @Excel(name = "鍏ュ簱鎵规")
     private String inboundBatches;
 
     @Schema(description = "鍏ュ簱鏁伴噺")
+    @Excel(name = "鍏ュ簱鏁伴噺")
     private BigDecimal stockInNum;
 
     @Schema(description = "鎵瑰彿")
@@ -57,6 +60,7 @@
     @TableField(fill = FieldFill.INSERT)
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @Excel(name = "鍏ュ簱鏃堕棿")
     private LocalDateTime createTime;
 
     @Schema(description = "鍒涘缓鐢ㄦ埛")
diff --git a/src/main/java/com/ruoyi/stock/service/StockInventoryService.java b/src/main/java/com/ruoyi/stock/service/StockInventoryService.java
index a3190c0..7bb1a24 100644
--- a/src/main/java/com/ruoyi/stock/service/StockInventoryService.java
+++ b/src/main/java/com/ruoyi/stock/service/StockInventoryService.java
@@ -40,6 +40,7 @@
     void exportStockInventory(HttpServletResponse response, StockInventoryDto stockInventoryDto);
 
     IPage<StockInRecordDto> stockInventoryPage(StockInventoryDto stockInventoryDto,Page page);
+    void exportStockInventoryPage(HttpServletResponse response, StockInventoryDto stockInventoryDto);
 
     IPage<StockInventoryDto> stockInAndOutRecord(StockInventoryDto stockInventoryDto,Page page);
 
diff --git a/src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java b/src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java
index a73eb34..62f0f51 100644
--- a/src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java
+++ b/src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java
@@ -391,7 +391,6 @@
 
     @Override
     public void exportStockInventory(HttpServletResponse response, StockInventoryDto stockInventoryDto) {
-
         List<StockInventoryExportData> list = stockInventoryMapper.listStockInventoryExportData(stockInventoryDto);
         ExcelUtil<StockInventoryExportData> util = new ExcelUtil<>(StockInventoryExportData.class);
         util.exportExcel(response, list, "搴撳瓨淇℃伅");
@@ -403,6 +402,13 @@
     }
 
     @Override
+    public void exportStockInventoryPage(HttpServletResponse response, StockInventoryDto stockInventoryDto) {
+        List<StockInRecordDto> list = stockInventoryMapper.stockInventoryPage(stockInventoryDto,new Page(-1,-1)).getRecords();
+        ExcelUtil<StockInRecordDto> util = new ExcelUtil<>(StockInRecordDto.class);
+        util.exportExcel(response, list, "搴撳瓨鎶ヨ〃瀵煎嚭");
+    }
+
+    @Override
     public IPage<StockInventoryDto> stockInAndOutRecord(StockInventoryDto stockInventoryDto, Page page) {
         return stockInventoryMapper.stockInAndOutRecord(stockInventoryDto, page);
     }

--
Gitblit v1.9.3