From 723705c43f6e87e9f31e4c18eee1c163c14139bb Mon Sep 17 00:00:00 2001 From: Crunchy <3114200645@qq.com> Date: 星期五, 10 五月 2024 16:55:48 +0800 Subject: [PATCH] 2024-5-10 绩效管理-班次-文件导出 --- performance-server/src/main/java/com/yuanchu/mom/controller/PerformanceShiftController.java | 27 ++++++++++++++++++++++++--- 1 files changed, 24 insertions(+), 3 deletions(-) diff --git a/performance-server/src/main/java/com/yuanchu/mom/controller/PerformanceShiftController.java b/performance-server/src/main/java/com/yuanchu/mom/controller/PerformanceShiftController.java index 30f16ae..45a48c6 100644 --- a/performance-server/src/main/java/com/yuanchu/mom/controller/PerformanceShiftController.java +++ b/performance-server/src/main/java/com/yuanchu/mom/controller/PerformanceShiftController.java @@ -1,14 +1,24 @@ package com.yuanchu.mom.controller; +import com.alibaba.excel.EasyExcel; +import com.alibaba.excel.write.style.HorizontalCellStyleStrategy; +import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.dto.PerformanceShiftAddDto; import com.yuanchu.mom.pojo.PerformanceShift; import com.yuanchu.mom.service.PerformanceShiftService; +import com.yuanchu.mom.utils.StyleUtils; import com.yuanchu.mom.vo.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import javax.validation.constraints.NotNull; +import java.util.Collection; +import java.util.List; +import java.util.Map; /** @@ -55,8 +65,19 @@ @ApiOperation(value = "缁╂晥绠$悊-鐝-瀵煎嚭") @GetMapping("update") - public Result<?> exportToExcel(String time, String userName, String laboratory) { - performanceShiftService.exportToExcel(time, userName, laboratory); - return Result.success(); + public void exportToExcel(@NotNull(message = "鏃堕棿涓嶈兘涓虹┖锛�") String time, String userName, String laboratory, HttpServletResponse response) throws Exception { + Map<Object, Object> data = performanceShiftService.exportToExcel(time, userName, laboratory); + // 璁剧疆鍗曞厓鏍兼牱寮� + HorizontalCellStyleStrategy horizontalCellStyleStrategy = new HorizontalCellStyleStrategy(StyleUtils.getHeadStyle(), StyleUtils.getContentStyle()); + // 淇濆瓨鍒扮涓�涓猻heet涓� + response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); + response.setHeader("requestType","excel"); + response.setHeader("Access-Control-Expose-Headers", "requestType"); + EasyExcel.write(response.getOutputStream()) + .head((List<List<String>>) data.get("header")) + .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) // 鑷�傚簲鍒楀 + .registerWriteHandler(horizontalCellStyleStrategy) + .sheet("妯℃澘") + .doWrite((Collection<?>) data.get("data")); } } -- Gitblit v1.9.3