|
|
@ -8,6 +8,7 @@ import com.epmet.constant.ProjectConstant; |
|
|
|
import com.epmet.dto.ProjectDTO; |
|
|
|
import com.epmet.dto.extract.form.BizDataFormDTO; |
|
|
|
import com.epmet.dto.extract.form.StaffPatrolStatsFormDTO; |
|
|
|
import com.epmet.dto.result.PatrolRoutineWorkResult; |
|
|
|
import com.epmet.dto.user.result.CustomerGridStaffDTO; |
|
|
|
import com.epmet.dto.user.result.CustomerStaffDTO; |
|
|
|
import com.epmet.dto.user.result.StaffPatrolRecordResult; |
|
|
@ -128,12 +129,17 @@ public class BizDataStatsServiceImpl implements BizDataStatsService { |
|
|
|
//获取昨日的立项项目数
|
|
|
|
List<ProjectDTO> yesterdayProjectList = projectService.selectProjectListByDateId(formDTO.getCustomerId(), formDTO.getDateId(), ProjectConstant.PROJECT_ORIGIN_AGENCY); |
|
|
|
|
|
|
|
//获取昨日的例行工作数据
|
|
|
|
List<PatrolRoutineWorkResult> yesterdayWorkList = userService.selectRoutineWorkListByDateId(formDTO.getCustomerId(), formDTO.getDateId()); |
|
|
|
|
|
|
|
//遍历网格员 设置其 巡查次数 巡查时常 上报项目数
|
|
|
|
yesterdayPatrolList.forEach(patrolRecord -> { |
|
|
|
String key = patrolRecord.getGrid().concat(patrolRecord.getStaffId()); |
|
|
|
StatsStaffPatrolRecordDailyDTO patrolRecordDailyDTO = yesterdayStatsMap.get(key); |
|
|
|
if (patrolRecordDailyDTO != null) { |
|
|
|
long total = (patrolRecord.getPatrolEndTime().getTime() - patrolRecord.getPatrolStartTime().getTime()) / 1000; |
|
|
|
if (patrolRecordDailyDTO == null) { |
|
|
|
return; |
|
|
|
} |
|
|
|
long total = (patrolRecord.getPatrolEndTime().getTime() - patrolRecord.getPatrolStartTime().getTime()) / NumConstant.ONE_THOUSAND; |
|
|
|
if (patrolRecordDailyDTO.getTotalTime() == null) { |
|
|
|
patrolRecordDailyDTO.setTotalTime(NumConstant.ZERO); |
|
|
|
} |
|
|
@ -147,7 +153,6 @@ public class BizDataStatsServiceImpl implements BizDataStatsService { |
|
|
|
patrolRecordDailyDTO.setLatestPatrolTime(patrolRecord.getPatrolStartTime()); |
|
|
|
patrolRecordDailyDTO.setLatestPatrolStatus(patrolRecord.getStatus()); |
|
|
|
} |
|
|
|
} |
|
|
|
}); |
|
|
|
//填充项目数
|
|
|
|
yesterdayProjectList.forEach(projectDTO -> { |
|
|
@ -164,10 +169,19 @@ public class BizDataStatsServiceImpl implements BizDataStatsService { |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
recordDailyDTO.setReportProjectCount(recordDailyDTO.getReportProjectCount() + 1); |
|
|
|
recordDailyDTO.setReportProjectCount(recordDailyDTO.getReportProjectCount() + NumConstant.ONE); |
|
|
|
} |
|
|
|
}); |
|
|
|
}); |
|
|
|
yesterdayWorkList.forEach(work->{ |
|
|
|
String key = work.getGridId().concat(work.getUserId()); |
|
|
|
StatsStaffPatrolRecordDailyDTO patrolRecordDailyDTO = yesterdayStatsMap.get(key); |
|
|
|
if (patrolRecordDailyDTO == null){ |
|
|
|
return; |
|
|
|
} |
|
|
|
patrolRecordDailyDTO.setRoutineWorkCount(patrolRecordDailyDTO.getRoutineWorkCount() + NumConstant.ONE); |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
Integer effectRow = statsStaffPatrolService.delAndInsertBatch(formDTO, insertList); |
|
|
|
log.debug("initStaffPatrolStats insert rows:{}", effectRow); |
|
|
@ -227,6 +241,7 @@ public class BizDataStatsServiceImpl implements BizDataStatsService { |
|
|
|
record.setPatrolTotal(NumConstant.ZERO); |
|
|
|
record.setLatestPatrolStatus("end"); |
|
|
|
record.setReportProjectCount(NumConstant.ZERO); |
|
|
|
record.setRoutineWorkCount(NumConstant.ZERO); |
|
|
|
|
|
|
|
record.setSourceType("internal"); |
|
|
|
record.setSourceCustomerId(record.getCustomerId()); |
|
|
|