From e7dd8b490661c994c414c0edc2da1854d9bcef82 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期四, 05 十一月 2026 13:33:12 +0800
Subject: [PATCH] feat(excel): 优化Excel列宽与必填标记并支持巡检附件
---
yudao-framework/yudao-spring-boot-starter-excel/src/main/java/cn/iocoder/yudao/framework/excel/core/util/ExcelUtils.java | 8 +++++---
1 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/yudao-framework/yudao-spring-boot-starter-excel/src/main/java/cn/iocoder/yudao/framework/excel/core/util/ExcelUtils.java b/yudao-framework/yudao-spring-boot-starter-excel/src/main/java/cn/iocoder/yudao/framework/excel/core/util/ExcelUtils.java
index 5a9b24d..b2bd788 100644
--- a/yudao-framework/yudao-spring-boot-starter-excel/src/main/java/cn/iocoder/yudao/framework/excel/core/util/ExcelUtils.java
+++ b/yudao-framework/yudao-spring-boot-starter-excel/src/main/java/cn/iocoder/yudao/framework/excel/core/util/ExcelUtils.java
@@ -10,6 +10,7 @@
import cn.idev.excel.metadata.CellExtra;
import cn.iocoder.yudao.framework.common.util.http.HttpUtils;
import cn.iocoder.yudao.framework.excel.core.handler.ColumnWidthMatchStyleStrategy;
+import cn.iocoder.yudao.framework.excel.core.handler.RequiredHeaderWriteHandler;
import cn.iocoder.yudao.framework.excel.core.handler.SelectSheetWriteHandler;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.web.multipart.MultipartFile;
@@ -45,12 +46,13 @@
public static <T> void write(HttpServletResponse response, String filename, String sheetName,
Class<T> head, List<T> data) throws IOException {
// 杈撳嚭 Excel
- ExcelWriter excelWriter = FastExcelFactory.write(response.getOutputStream(), head)
+ var builder = FastExcelFactory.write(response.getOutputStream(), head)
.autoCloseStream(false) // 涓嶈鑷姩鍏抽棴锛屼氦缁� Servlet 鑷繁澶勭悊
.registerWriteHandler(new ColumnWidthMatchStyleStrategy()) // 鍩轰簬 column 闀垮害锛岃嚜鍔ㄩ�傞厤銆傛渶澶� 255 瀹藉害
.registerWriteHandler(new SelectSheetWriteHandler(head)) // 鍩轰簬鍥哄畾 sheet 瀹炵幇涓嬫媺妗�
- .registerConverter(new LongStringConverter()) // 閬垮厤 Long 绫诲瀷涓㈠け绮惧害
- .build();
+ .registerConverter(new LongStringConverter()); // 閬垮厤 Long 绫诲瀷涓㈠け绮惧害
+ if (filename.contains("妯℃澘")) builder.registerWriteHandler(new RequiredHeaderWriteHandler());
+ ExcelWriter excelWriter = builder.build();
try {
excelWriter.write(data, FastExcelFactory.writerSheet(sheetName).build());
} finally {
--
Gitblit v1.9.3