zy-asrs-wcs/pom.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/sys/controller/RoleController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/utils/ExcelUtil.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
zy-asrs-wcs/pom.xml
@@ -61,6 +61,12 @@ <artifactId>spring-aspects</artifactId> <version>5.2.5.RELEASE</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>4.1.2</version> </dependency> </dependencies> <build> zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/sys/controller/RoleController.java
@@ -10,10 +10,15 @@ import com.zy.asrs.wcs.common.domain.PageParam; import com.zy.asrs.wcs.sys.entity.Role; import com.zy.asrs.wcs.sys.service.RoleService; import com.zy.asrs.wcs.utils.ExcelUtil; import com.zy.asrs.wcs.utils.Utils; import org.apache.poi.ss.usermodel.Workbook; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; import java.net.URLEncoder; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -113,8 +118,18 @@ @PreAuthorize("hasAuthority('sys:role:list')") @PostMapping("/role/export") public R export(@RequestBody Role role) { return R.ok("导出成功"); public void export(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception { Workbook workbook = ExcelUtil.create(); try { // 设置响应头 response.reset(); Utils.cors(response); response.setContentType("application/octet-stream; charset=utf-8"); response.setHeader("Content-Disposition", "attachment; filename=" + URLEncoder.encode("Role.xls", "UTF-8")); workbook.write(response.getOutputStream()); } finally { workbook.close(); } } } zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/utils/ExcelUtil.java
New file @@ -0,0 +1,54 @@ package com.zy.asrs.wcs.utils; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; /** * Created by vincent on 2/17/2024 */ public class ExcelUtil { public static Workbook create() { // 创建 Workbook 和 Sheet HSSFWorkbook workbook = new HSSFWorkbook(); Sheet sheet = workbook.createSheet("运维报表"); // 创建表头 Row header = sheet.createRow(0); header.createCell(0).setCellValue("姓名"); header.createCell(1).setCellValue("年龄"); header.createCell(2).setCellValue("性别"); header.createCell(3).setCellValue("职位"); // 添加一些数据 Row row1 = sheet.createRow(1); row1.createCell(0).setCellValue("张三"); row1.createCell(1).setCellValue(28); row1.createCell(2).setCellValue("男"); row1.createCell(3).setCellValue("运维工程师"); Row row2 = sheet.createRow(2); row2.createCell(0).setCellValue("李四"); row2.createCell(1).setCellValue(32); row2.createCell(2).setCellValue("女"); row2.createCell(3).setCellValue("项目经理"); Row row3 = sheet.createRow(3); row3.createCell(0).setCellValue("王五"); row3.createCell(1).setCellValue(25); row3.createCell(2).setCellValue("男"); row3.createCell(3).setCellValue("开发工程师"); // 执行单元格自动列宽 for (int i = 0; i <= 3; i++) { sheet.autoSizeColumn(i); } return workbook; } }