From 792ebaa8619718a13bf4abb64baf2cf242d6a7a7 Mon Sep 17 00:00:00 2001 From: wangqian <1406304305@qq.com> Date: Fri, 8 May 2026 16:58:24 +0800 Subject: [PATCH] 模板下载存在兼容问题修改 --- urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/costfee/CostFeeController.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/costfee/CostFeeController.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/costfee/CostFeeController.java index 4ec7f83..7ecd02c 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/costfee/CostFeeController.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/costfee/CostFeeController.java @@ -114,10 +114,15 @@ public class CostFeeController{ // 设置下载响应头 response.reset(); response.setContentType(EXCEL_MIME_TYPE); - // response.setCharacterEncoding("UTF-8"); - String encodedName = URLEncoder.encode(downloadFileName, "UTF-8").replaceAll("\\+", "%20"); - response.setHeader("Content-Disposition", "attachment;filename=" + encodedName); - response.setHeader("Cache-Control", "no-store"); // 禁止缓存 + // response.setCharacterEncoding("UTF-8"); + String encodedName = URLEncoder.encode(downloadFileName, "UTF-8"); + // 标准文件名编码(Chrome / Edge / Firefox 全兼容) + response.setHeader("Content-Disposition", "attachment;filename*=UTF-8''" + encodedName); + // 浏览器缓存配置(必须) + response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); + response.setHeader("Pragma", "no-cache"); + response.setHeader("Expires", "0"); + try (InputStream in = resource.getInputStream(); XSSFWorkbook workbook = new XSSFWorkbook(in); @@ -203,7 +208,7 @@ public class CostFeeController{ } String unit = cell.getStringCellValue(); // 默认赋值【第一个单位】,你可以根据业务改成其他值 - if (!StringUtils.isEmpty(unit)) { + if (!StringUtils.isEmpty(unit) && options.size() > 3) { cell.setCellValue(options.get(2)); } } -- libgit2 0.21.4