Browse Source

Merge remote-tracking branch 'origin/dev_export_excel' into dev_export_excel

dev_shibei_match
sunyuchao 4 years ago
parent
commit
b12403e092
  1. 3
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/ExcelUtils.java
  2. 27
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java

3
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/ExcelUtils.java

@ -113,8 +113,9 @@ public class ExcelUtils {
sheet1.setDefaultRowHeight((short)(2*256));
response.setCharacterEncoding("UTF-8");
response.setHeader("content-Type", "application/vnd.ms-excel");
fileName = fileName + ".xls";
response.setHeader("Content-Disposition",
"attachment;filename=" + URLEncoder.encode(fileName, "UTF-8") + ".xls");
"attachment;filename=" +fileName);
ServletOutputStream out = response.getOutputStream();
workbook.write(out);
out.flush();

27
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java

@ -1870,13 +1870,38 @@ public class DataStatsServiceImpl implements DataStatsService {
d3.setClosedProjectCount(l.stream().collect(Collectors.summingInt(CustomerDataManageExcel::getClosedProjectCount)));
d3.setPatrolPeopleCount(l.stream().collect(Collectors.summingInt(CustomerDataManageExcel::getPatrolPeopleCount)));
d3.setPatrolCount(l.stream().collect(Collectors.summingInt(CustomerDataManageExcel::getPatrolCount)));
d3.setPatrolDuration("");
d3.setPatrolDurationInteger(l.stream().collect(Collectors.summingInt(CustomerDataManageExcel::getPatrolDurationInteger)));
d3.setPatrolDuration(getHm(d3.getPatrolDurationInteger()));
l.add(d3);
}
String fileName = excelName(formDTO);
ExcelUtils.exportExcelToTargetDisposeAll(response,fileName,l, CustomerDataManageExcel.class);
}
/**
* @Description 秒转换时分
* @Param seconds
* @author zxc
* @date 2021/9/13 10:03 上午
*/
public String getHm(Integer seconds){
String result = "0分钟";
if (seconds >= NumConstant.SIXTY) {
Integer hours = seconds / 3600;
Integer minutes = seconds % 3600 / 60;
result = (hours < NumConstant.ONE ? "" : hours + "小时") + (minutes < NumConstant.ONE ? "" : minutes + "分钟");
}else if (seconds < NumConstant.SIXTY && seconds > NumConstant.ZERO){
result = "1分钟";
}
return result;
}
/**
* @Description 表头获取
* @Param formDTO
* @author zxc
* @date 2021/9/13 10:02 上午
*/
public String excelName(CustomerDataManageFormDTO formDTO){
StringBuffer s = new StringBuffer();
String agencyName = indexService.selectAgencyNameByAgencyId(formDTO.getAgencyId());

Loading…
Cancel
Save