diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/GridMemberDataAnalysisResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/GridMemberDataAnalysisResultDTO.java index 0bd54027fa..b100635906 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/GridMemberDataAnalysisResultDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/GridMemberDataAnalysisResultDTO.java @@ -22,7 +22,7 @@ public class GridMemberDataAnalysisResultDTO { // 巡查 private int patrolTimes; - private int totalTime; + private double totalTime; private int patrolRoutineWorkTimes; } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/beans/GridMemberDataAnalysisExcelExportBean.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/beans/GridMemberDataAnalysisExcelExportBean.java index c8ce22756f..091c17c4c4 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/beans/GridMemberDataAnalysisExcelExportBean.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/beans/GridMemberDataAnalysisExcelExportBean.java @@ -47,8 +47,8 @@ public class GridMemberDataAnalysisExcelExportBean { @ExcelProperty(value = {"巡查次数"}) private int patrolTimes; - @ExcelProperty(value = {"巡查时长"}) - private int totalTime; + @ExcelProperty(value = {"巡查时长(小时)"}) + private double totalTime; @ExcelProperty(value = {"例行工作次数"}) private int patrolRoutineWorkTimes; diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/AggreGridServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/AggreGridServiceImpl.java index dcf258d270..346a0f9ecf 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/AggreGridServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/AggreGridServiceImpl.java @@ -21,6 +21,8 @@ import com.google.common.collect.Lists; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.math.BigDecimal; +import java.math.RoundingMode; import java.util.*; import java.util.function.Function; import java.util.stream.Collectors; @@ -143,7 +145,11 @@ public class AggreGridServiceImpl implements AggreGridService { GridMemberDataAnalysisResultDTO data = gridAndData.get(d.getGridId()); if (data != null) { data.setPatrolTimes(d.getPatrolTimes()); - data.setTotalTime(d.getTotalTime()); + + // 巡查时长,转为h为单位 + double f = ((double)d.getTotalTime()) / 3600; + BigDecimal h = new BigDecimal(f).setScale(2, RoundingMode.HALF_UP); + data.setTotalTime(h.doubleValue()); data.setPatrolRoutineWorkTimes(d.getPatrolRoutineWorkTimes()); } } diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ApprovaledListExcel.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ApprovaledListExcel.java index ef08b3cc39..3e4022712a 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ApprovaledListExcel.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ApprovaledListExcel.java @@ -1,6 +1,7 @@ package com.epmet.excel; import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; import lombok.EqualsAndHashCode; import lombok.Getter; import lombok.Setter; @@ -13,6 +14,7 @@ import lombok.Setter; @Getter @Setter @EqualsAndHashCode +@ColumnWidth(20) public class ApprovaledListExcel { @ExcelProperty("项目事件标题") private String title; diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java index c407145df4..90a11635e7 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java @@ -3058,7 +3058,7 @@ public class ProjectServiceImpl extends BaseServiceImpl approvaledList(ApprovaledListFromDTO formDTO) { - if (StringUtils.isNotBlank(formDTO.getStaffId()) && ProjectConstant.ORG_TYPE_GRID.equals(formDTO.getOrgType())) { + if (StringUtils.isNotBlank(formDTO.getStaffId())) { CustomerStaffInfoCacheResult staff = CustomerStaffRedis.getStaffInfo(formDTO.getCustomerId(), formDTO.getStaffId()); if (null == staff) { throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "获取工作人员信息失败"); 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 33f0e8ec45..df7e90c614 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 @@ -954,9 +954,16 @@ public class ProjectTraceServiceImpl implements ProjectTraceS formDTO.setPageNo(NumConstant.ONE); formDTO.setPageSize(NumConstant.ONE_THOUSAND); ExcelWriter excelWriter = null; + + CustomerStaffInfoCacheResult staff = CustomerStaffRedis.getStaffInfo(formDTO.getCustomerId(), formDTO.getStaffId()); + if (null == staff) { + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "获取工作人员信息失败"); + } + + String sheetName = getSheetName(staff.getRealName(), formDTO.getStartTime(), formDTO.getEndTime()); try { excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel("直接立项记录.xlsx", response)).build(); - WriteSheet writeSheet = EasyExcel.writerSheet().build(); + WriteSheet writeSheet = EasyExcel.writerSheet(sheetName).build(); writeSheet.setClazz(ApprovaledListExcel.class); Integer num; //一千条一循环分批写入 @@ -976,6 +983,20 @@ 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) { + sb.append("截止").append(endTime); + } else if (startTime != null && endTime != null) { + sb.append(startTime) + .append("至") + .append(endTime); + } + sb.append("的上报事件(直接立项)记录"); + return sb.toString(); + } + private List queryStaffListRes(List staffList,String currentUserId) { List staffIdList = staffList.stream().map(TickStaffFormDTO::getStaffId).collect(Collectors.toList()); staffIdList.add(currentUserId);