From 4e7a59c400a57e889d9d9756a08afff956c49b60 Mon Sep 17 00:00:00 2001 From: wangguangyuan Date: Wed, 17 Dec 2025 17:18:11 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E8=AF=A6=E6=83=85=E5=AF=BC?= =?UTF-8?q?=E5=87=BA=E7=A6=81=E7=94=A8=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../inspect/task/controller/PatrolTaskController.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/inspect-main/inspect-main-task/src/main/java/com/inspect/task/controller/PatrolTaskController.java b/inspect-main/inspect-main-task/src/main/java/com/inspect/task/controller/PatrolTaskController.java index 4510c22..193993d 100644 --- a/inspect-main/inspect-main-task/src/main/java/com/inspect/task/controller/PatrolTaskController.java +++ b/inspect-main/inspect-main-task/src/main/java/com/inspect/task/controller/PatrolTaskController.java @@ -54,6 +54,8 @@ import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.streaming.SXSSFSheet; import org.apache.poi.xssf.streaming.SXSSFWorkbook; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpHeaders; +import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; @@ -2684,6 +2686,9 @@ public class PatrolTaskController extends BaseController { private void exportExcelV2(HttpServletResponse response, List dataList) throws Exception { response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); response.setHeader("Content-Disposition", "attachment; filename=\"task_export_" + System.currentTimeMillis() + ".xlsx\""); + response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); + response.setHeader("Pragma", "no-cache"); + response.setHeader("Expires", "0"); logger.info("[EXCEL]开始导出"); printMemoryInfo("开始导出"); @@ -2733,17 +2738,15 @@ public class PatrolTaskController extends BaseController { pathMap = null; } + response.setHeader("Transfer-Encoding", "chunked"); workbook.write(out); - // 清理临时文件 - workbook.dispose(); - printMemoryInfo("结束导出"); } catch (IOException e) { logger.error("导出异常:{}", e); printMemoryInfo("导出异常"); } finally { Path start = Paths.get(TEMP_DIR); Files.walk(start) - .filter(Files::isRegularFile) + .sorted(Comparator.reverseOrder()) .forEach(path -> { try { Files.deleteIfExists(path);