diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java index 3985ddcfcf..245efb9bd5 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java @@ -52,6 +52,7 @@ import org.springframework.web.context.request.ServletRequestAttributes; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.net.URLEncoder; import java.util.*; import java.util.stream.Collectors; @@ -957,9 +958,12 @@ public class ProjectTraceServiceImpl implements ProjectTraceS String sheetName = getSheetName(staff.getRealName(), formDTO.getStartTime(), formDTO.getEndTime()); try { - excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel("直接立项记录.xlsx", response)).build(); + String name = URLEncoder.encode(sheetName, "UTF-8"); + response.setCharacterEncoding("UTF-8"); + response.setHeader("Content-disposition", "attachment;"); + + excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(name, response)).build(); WriteSheet writeSheet = EasyExcel.writerSheet(sheetName).build(); - writeSheet.setClazz(ApprovaledListExcel.class); Integer num; //一千条一循环分批写入 do { @@ -981,9 +985,9 @@ public class ProjectTraceServiceImpl implements ProjectTraceS private String getSheetName(String staffName, String startTime, String endTime) { StringBuilder sb = new StringBuilder(staffName); String s = staffName; - if (startTime == null && endTime != null) { + if (StringUtils.isBlank(startTime) && StringUtils.isNotBlank(endTime)) { sb.append("截止").append(endTime); - } else if (startTime != null && endTime != null) { + } else if (StringUtils.isNotBlank(startTime) && StringUtils.isNotBlank(endTime)) { sb.append(startTime) .append("至") .append(endTime);