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 df7e90c614..7a0bd02a75 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 @@ -47,12 +47,12 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.context.request.RequestContextHolder; 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; @@ -962,9 +962,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 { @@ -986,9 +989,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);