|
|
@ -487,24 +487,27 @@ public class GovOrgController { |
|
|
|
excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(fileName, response), OrgProjectDetailExcel.class).build(); |
|
|
|
PageData<OrgProjectDetailResultDTO> page = null; |
|
|
|
WriteSheet writeSheet = EasyExcel.writerSheet("Sheet1").registerWriteHandler(new FreezeAndFilter()).build(); |
|
|
|
OrgProjectDetailExcel sum = new OrgProjectDetailExcel(); |
|
|
|
do { |
|
|
|
page = govOrgService.orgProjectDetailList(tokenDto, formDTO); |
|
|
|
List<OrgProjectDetailExcel> list = ConvertUtils.sourceToTarget(page.getList(), OrgProjectDetailExcel.class); |
|
|
|
list.forEach(item -> { |
|
|
|
item.setIndex(i.getAndIncrement()); |
|
|
|
}); |
|
|
|
OrgProjectDetailExcel sum = new OrgProjectDetailExcel(); |
|
|
|
sum.setIndex(i.getAndIncrement()); |
|
|
|
sum.setOrgName("合计"); |
|
|
|
sum.setMemberCount(list.stream().mapToInt(OrgProjectDetailExcel::getMemberCount).sum()); |
|
|
|
sum.setProjectCount(list.stream().mapToInt(OrgProjectDetailExcel::getProjectCount).sum()); |
|
|
|
sum.setClosedCount(list.stream().mapToInt(OrgProjectDetailExcel::getClosedCount).sum()); |
|
|
|
sum.setProjectAve(list.stream().mapToInt(OrgProjectDetailExcel::getProjectAve).sum()); |
|
|
|
sum.setClosedAve(list.stream().mapToInt(OrgProjectDetailExcel::getClosedAve).sum()); |
|
|
|
list.add(sum); |
|
|
|
|
|
|
|
sum.setMemberCount(sum.getMemberCount() + list.stream().mapToInt(OrgProjectDetailExcel::getMemberCount).sum()); |
|
|
|
sum.setProjectCount(sum.getProjectCount() + list.stream().mapToInt(OrgProjectDetailExcel::getProjectCount).sum()); |
|
|
|
sum.setClosedCount(sum.getClosedCount() + list.stream().mapToInt(OrgProjectDetailExcel::getClosedCount).sum()); |
|
|
|
sum.setProjectAve(sum.getProjectAve() + list.stream().mapToInt(OrgProjectDetailExcel::getProjectAve).sum()); |
|
|
|
sum.setClosedAve(sum.getClosedAve() + list.stream().mapToInt(OrgProjectDetailExcel::getClosedAve).sum()); |
|
|
|
excelWriter.write(list, writeSheet); |
|
|
|
formDTO.setPageNo(formDTO.getPageNo() + NumConstant.ONE); |
|
|
|
} while (org.apache.commons.collections4.CollectionUtils.isNotEmpty(page.getList()) && page.getList().size() == formDTO.getPageSize()); |
|
|
|
sum.setIndex(i.getAndIncrement()); |
|
|
|
sum.setOrgName("合计"); |
|
|
|
List<OrgProjectDetailExcel> list = new ArrayList<>(); |
|
|
|
list.add(sum); |
|
|
|
excelWriter.write(list, writeSheet); |
|
|
|
} catch (EpmetException e) { |
|
|
|
response.reset(); |
|
|
|
response.setCharacterEncoding("UTF-8"); |
|
|
|