diff --git a/src/main/java/com/ai/da/controller/GlobalAwardController.java b/src/main/java/com/ai/da/controller/GlobalAwardController.java index 1e8eb00b..2206dc4d 100644 --- a/src/main/java/com/ai/da/controller/GlobalAwardController.java +++ b/src/main/java/com/ai/da/controller/GlobalAwardController.java @@ -11,6 +11,7 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import jakarta.annotation.Resource; +import jakarta.servlet.http.HttpServletResponse; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -165,10 +166,13 @@ public class GlobalAwardController { @GetMapping("/contestants/export") @ApiOperation(value = "导出参赛者列表为Excel", notes = "导出所有参赛者信息为xlsx并触发下载") - public Response exportContestants() throws Exception { - // 将文件保存到服务端本地目录(uploadDir/exports),不返回文件内容给客户端 - globalAwardService.saveContestantsToLocal(); - return Response.success(); + public void exportContestants(HttpServletResponse response) throws Exception { + byte[] data = globalAwardService.exportContestants(); + response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); + response.setHeader("Content-Disposition", "attachment; filename=\"contestants.xlsx\""); + response.setContentLength(data.length); + response.getOutputStream().write(data); + response.getOutputStream().flush(); } }