From 03c3c2cd4491f3b3d6defa13a8635ce18852eb37 Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期五, 23 一月 2026 15:28:39 +0800
Subject: [PATCH] feat(stock): 库存导出接口开发
---
src/main/java/com/ruoyi/stock/service/StockInventoryService.java | 4 ++
src/main/java/com/ruoyi/stock/execl/StockInventoryExportData.java | 12 ++++++
src/main/java/com/ruoyi/stock/mapper/StockInventoryMapper.java | 6 +++
src/main/resources/mapper/stock/StockInventoryMapper.xml | 13 ++++++
src/main/java/com/ruoyi/stock/controller/StockInventoryController.java | 8 +++
src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java | 20 +++++-----
6 files changed, 52 insertions(+), 11 deletions(-)
diff --git a/src/main/java/com/ruoyi/stock/controller/StockInventoryController.java b/src/main/java/com/ruoyi/stock/controller/StockInventoryController.java
index 8d5db33..25e109d 100644
--- a/src/main/java/com/ruoyi/stock/controller/StockInventoryController.java
+++ b/src/main/java/com/ruoyi/stock/controller/StockInventoryController.java
@@ -73,6 +73,12 @@
public void exportStockInventory(HttpServletResponse response) {
List<StockInventoryExportData> list = new ArrayList<>();
ExcelUtil<StockInventoryExportData> util = new ExcelUtil<>(StockInventoryExportData.class);
- util.exportExcel(response, list, "涓嬭浇钖祫绠$悊鍒楄〃妯℃澘");
+ util.exportExcel(response, list, "搴撳瓨妯℃澘");
+ }
+
+ @GetMapping("/exportStockInventory")
+ @ApiOperation("瀵煎嚭搴撳瓨")
+ public void exportStockInventory(HttpServletResponse response,StockInventoryDto stockInventoryDto) {
+ stockInventoryService.exportStockInventory(response,stockInventoryDto);
}
}
diff --git a/src/main/java/com/ruoyi/stock/execl/StockInventoryExportData.java b/src/main/java/com/ruoyi/stock/execl/StockInventoryExportData.java
index 8937fbb..c3d17a1 100644
--- a/src/main/java/com/ruoyi/stock/execl/StockInventoryExportData.java
+++ b/src/main/java/com/ruoyi/stock/execl/StockInventoryExportData.java
@@ -1,10 +1,14 @@
package com.ruoyi.stock.execl;
import com.alibaba.excel.annotation.ExcelProperty;
+import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
@Data
public class StockInventoryExportData {
@@ -15,10 +19,18 @@
@Excel(name = "瑙勬牸")
private String productName;
+ @Excel(name = "鍗曚綅")
+ private String unit;
+
@Excel(name = "搴撳瓨鏁伴噺")
private BigDecimal qualitity;
@Excel(name = "澶囨敞")
private String remark;
+ @Excel(name = "鏈�鏂版洿鏂版椂闂�")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime updateTime;
+
}
diff --git a/src/main/java/com/ruoyi/stock/mapper/StockInventoryMapper.java b/src/main/java/com/ruoyi/stock/mapper/StockInventoryMapper.java
index 3463cc3..322cc3c 100644
--- a/src/main/java/com/ruoyi/stock/mapper/StockInventoryMapper.java
+++ b/src/main/java/com/ruoyi/stock/mapper/StockInventoryMapper.java
@@ -3,10 +3,13 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.stock.dto.StockInventoryDto;
+import com.ruoyi.stock.execl.StockInventoryExportData;
import com.ruoyi.stock.pojo.StockInventory;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
* <p>
@@ -25,4 +28,7 @@
int updateAddStockInventory(@Param("ew") StockInventoryDto stockInventoryDto);
int updateSubtractStockInventory(@Param("ew") StockInventoryDto stockInventoryDto);
+
+ List<StockInventoryExportData> listStockInventoryExportData(StockInventoryDto stockInventoryDto);
+
}
diff --git a/src/main/java/com/ruoyi/stock/service/StockInventoryService.java b/src/main/java/com/ruoyi/stock/service/StockInventoryService.java
index 41a2f7f..37571f6 100644
--- a/src/main/java/com/ruoyi/stock/service/StockInventoryService.java
+++ b/src/main/java/com/ruoyi/stock/service/StockInventoryService.java
@@ -8,6 +8,8 @@
import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.web.multipart.MultipartFile;
+import javax.servlet.http.HttpServletResponse;
+
/**
* <p>
* 搴撳瓨琛� 鏈嶅姟绫�
@@ -25,4 +27,6 @@
Boolean subtractStockInventory(StockInventoryDto stockInventoryDto);
R importStockInventory(MultipartFile file);
+
+ void exportStockInventory(HttpServletResponse response, StockInventoryDto stockInventoryDto);
}
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 3beaf09..ae5b91f 100644
--- a/src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java
+++ b/src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java
@@ -4,10 +4,8 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.basic.excel.SupplierManageExcelDto;
-import com.ruoyi.basic.pojo.SupplierManage;
+import com.ruoyi.account.pojo.BorrowInfo;
import com.ruoyi.common.enums.StockQualifiedRecordTypeEnum;
-import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.framework.web.domain.R;
import com.ruoyi.procurementrecord.utils.StockUtils;
@@ -17,7 +15,6 @@
import com.ruoyi.stock.dto.StockInventoryDto;
import com.ruoyi.stock.dto.StockOutRecordDto;
import com.ruoyi.stock.execl.StockInventoryExportData;
-import com.ruoyi.stock.pojo.StockInRecord;
import com.ruoyi.stock.pojo.StockInventory;
import com.ruoyi.stock.mapper.StockInventoryMapper;
import com.ruoyi.stock.service.StockInRecordService;
@@ -25,17 +22,12 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.stock.service.StockOutRecordService;
import lombok.AllArgsConstructor;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
-import java.time.LocalDate;
-import java.util.ArrayList;
+import javax.servlet.http.HttpServletResponse;
import java.util.List;
-import java.util.Set;
-import java.util.stream.Collectors;
/**
* <p>
@@ -133,4 +125,12 @@
}
return R.fail();
}
+
+ @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, "搴撳瓨淇℃伅");
+ }
}
diff --git a/src/main/resources/mapper/stock/StockInventoryMapper.xml b/src/main/resources/mapper/stock/StockInventoryMapper.xml
index b39d329..0eaf12b 100644
--- a/src/main/resources/mapper/stock/StockInventoryMapper.xml
+++ b/src/main/resources/mapper/stock/StockInventoryMapper.xml
@@ -58,5 +58,18 @@
and p.product_name like concat('%',#{ew.productName},'%')
</if>
</select>
+ <select id="listStockInventoryExportData" resultType="com.ruoyi.stock.execl.StockInventoryExportData">
+ select si.qualitity,
+ pm.model,
+ pm.unit,
+ p.product_name
+ from stock_inventory si
+ left join product_model pm on si.product_model_id = pm.id
+ left join product p on pm.product_id = p.id
+ where 1 = 1
+ <if test="ew.productName != null and ew.productName !=''">
+ and p.product_name like concat('%',#{ew.productName},'%')
+ </if>
+ </select>
</mapper>
--
Gitblit v1.9.3