Browse Source

修复:生产月报增加非空判断

zhongwei
ty 4 months ago
parent
commit
7e5a31c091
  1. 32
      hzims-service/operational/src/main/java/com/hnac/hzims/operational/duty/service/impl/ImsDutyMainServiceImpl.java
  2. 135
      hzims-service/operational/src/main/java/com/hnac/hzims/operational/report/service/impl/MonthReportServiceImpl.java

32
hzims-service/operational/src/main/java/com/hnac/hzims/operational/duty/service/impl/ImsDutyMainServiceImpl.java

@ -1125,25 +1125,35 @@ public class ImsDutyMainServiceImpl extends ServiceImpl<ImsDutyMainMapper, ImsDu
if (rec.getDelayStatus().equals(CARRY_DELAY_STATUS.getStatus())){ if (rec.getDelayStatus().equals(CARRY_DELAY_STATUS.getStatus())){
//如果是接班,算接班的班组+1 //如果是接班,算接班的班组+1
List<ImsDutyMainEntity> collect = imsDutyMainEntityList.stream().filter(s -> rec.getDutyId().equals(s.getId())).collect(Collectors.toList()); List<ImsDutyMainEntity> collect = imsDutyMainEntityList.stream().filter(s -> rec.getDutyId().equals(s.getId())).collect(Collectors.toList());
if(CollectionUtil.isEmpty(collect)){
continue;
}
List<DutyRunReportVO> troubleRunReportList = dutyReportVOList.stream().filter(s -> s.getGroupId().equals(collect.get(0).getDutyGroupId().toString())).collect(Collectors.toList()); List<DutyRunReportVO> troubleRunReportList = dutyReportVOList.stream().filter(s -> s.getGroupId().equals(collect.get(0).getDutyGroupId().toString())).collect(Collectors.toList());
DutyRunReportVO troubleRunReport = troubleRunReportList.get(0); DutyRunReportVO troubleRunReport = troubleRunReportList.get(0);
troubleRunReport.setDelayChangeShifts(troubleRunReport.getDelayChangeShifts()+1); troubleRunReport.setDelayChangeShifts(troubleRunReport.getDelayChangeShifts()+1);
}else if (rec.getDelayStatus().equals(HAND_DELAY_STATUS.getStatus())) { }else if (rec.getDelayStatus().equals(HAND_DELAY_STATUS.getStatus())) {
//如果是交班延迟,算当前的班组+1 //如果是交班延迟,算当前的班组+1
List<ImsDutyMainEntity> handerCollect = imsDutyMainEntityList.stream().filter(s -> rec.getDutyId().equals(s.getPreDutyId())).collect(Collectors.toList()); List<ImsDutyMainEntity> handerCollect = imsDutyMainEntityList.stream().filter(s -> rec.getDutyId().equals(s.getPreDutyId())).collect(Collectors.toList());
if(CollectionUtil.isEmpty(handerCollect)){
continue;
}
List<DutyRunReportVO> handerRunReportList = dutyReportVOList.stream().filter(s -> s.getGroupId().equals(handerCollect.get(0).getDutyGroupId().toString())).collect(Collectors.toList()); List<DutyRunReportVO> handerRunReportList = dutyReportVOList.stream().filter(s -> s.getGroupId().equals(handerCollect.get(0).getDutyGroupId().toString())).collect(Collectors.toList());
DutyRunReportVO handerRunRepor = handerRunReportList.get(0); DutyRunReportVO handerRunRepor = handerRunReportList.get(0);
handerRunRepor.setDelayChangeShifts(handerRunRepor.getDelayChangeShifts()+1); handerRunRepor.setDelayChangeShifts(handerRunRepor.getDelayChangeShifts()+1);
}else { }else {
//交接班延迟,交接班组都+1 //交接班延迟,交接班组都+1
List<ImsDutyMainEntity> collect = imsDutyMainEntityList.stream().filter(s -> rec.getDutyId().equals(s.getId())).collect(Collectors.toList()); List<ImsDutyMainEntity> collect = imsDutyMainEntityList.stream().filter(s -> rec.getDutyId().equals(s.getId())).collect(Collectors.toList());
if(CollectionUtil.isNotEmpty(collect)){
List<DutyRunReportVO> troubleRunReportList = dutyReportVOList.stream().filter(s -> s.getGroupId().equals(collect.get(0).getDutyGroupId().toString())).collect(Collectors.toList()); List<DutyRunReportVO> troubleRunReportList = dutyReportVOList.stream().filter(s -> s.getGroupId().equals(collect.get(0).getDutyGroupId().toString())).collect(Collectors.toList());
DutyRunReportVO troubleRunReport = troubleRunReportList.get(0); DutyRunReportVO troubleRunReport = troubleRunReportList.get(0);
troubleRunReport.setDelayChangeShifts(troubleRunReport.getDelayChangeShifts()+1); troubleRunReport.setDelayChangeShifts(troubleRunReport.getDelayChangeShifts()+1);
}
List<ImsDutyMainEntity> handerCollect = imsDutyMainEntityList.stream().filter(s -> rec.getDutyId().equals(s.getPreDutyId())).collect(Collectors.toList()); List<ImsDutyMainEntity> handerCollect = imsDutyMainEntityList.stream().filter(s -> rec.getDutyId().equals(s.getPreDutyId())).collect(Collectors.toList());
if(CollectionUtil.isNotEmpty(handerCollect)){
List<DutyRunReportVO> handerRunReportList = dutyReportVOList.stream().filter(s -> s.getGroupId().equals(handerCollect.get(0).getDutyGroupId().toString())).collect(Collectors.toList()); List<DutyRunReportVO> handerRunReportList = dutyReportVOList.stream().filter(s -> s.getGroupId().equals(handerCollect.get(0).getDutyGroupId().toString())).collect(Collectors.toList());
DutyRunReportVO handerRunRepor = handerRunReportList.get(0); DutyRunReportVO handerRunRepor = handerRunReportList.get(0);
handerRunRepor.setDelayChangeShifts(handerRunRepor.getDelayChangeShifts()+1); handerRunRepor.setDelayChangeShifts(handerRunRepor.getDelayChangeShifts()+1);
}
} }
} }
} }
@ -1152,25 +1162,35 @@ public class ImsDutyMainServiceImpl extends ServiceImpl<ImsDutyMainMapper, ImsDu
if (rec.getDelayStatus().equals(CARRY_DELAY_STATUS.getStatus())){ if (rec.getDelayStatus().equals(CARRY_DELAY_STATUS.getStatus())){
//如果是接班,算接班的班组+1 //如果是接班,算接班的班组+1
List<ImsDutyMainEntity> collect = imsDutyMainEntityList.stream().filter(s -> rec.getDutyId().equals(s.getId())).collect(Collectors.toList()); List<ImsDutyMainEntity> collect = imsDutyMainEntityList.stream().filter(s -> rec.getDutyId().equals(s.getId())).collect(Collectors.toList());
if(CollectionUtil.isEmpty(collect)){
continue;
}
List<DutyRunReportVO> troubleRunReportList = dutyReportVOList.stream().filter(s -> s.getGroupId().equals(collect.get(0).getDutyGroupId().toString())).collect(Collectors.toList()); List<DutyRunReportVO> troubleRunReportList = dutyReportVOList.stream().filter(s -> s.getGroupId().equals(collect.get(0).getDutyGroupId().toString())).collect(Collectors.toList());
DutyRunReportVO troubleRunReport = troubleRunReportList.get(0); DutyRunReportVO troubleRunReport = troubleRunReportList.get(0);
troubleRunReport.setExceptionChangeShifts(troubleRunReport.getExceptionChangeShifts()+1); troubleRunReport.setExceptionChangeShifts(troubleRunReport.getExceptionChangeShifts()+1);
}else if (rec.getDelayStatus().equals(HAND_DELAY_STATUS.getStatus())) { }else if (rec.getDelayStatus().equals(HAND_DELAY_STATUS.getStatus())) {
//如果是交班延迟,算当前的班组+1 //如果是交班延迟,算当前的班组+1
List<ImsDutyMainEntity> handerCollect = imsDutyMainEntityList.stream().filter(s -> rec.getDutyId().equals(s.getPreDutyId())).collect(Collectors.toList()); List<ImsDutyMainEntity> handerCollect = imsDutyMainEntityList.stream().filter(s -> rec.getDutyId().equals(s.getPreDutyId())).collect(Collectors.toList());
if(CollectionUtil.isEmpty(handerCollect)){
continue;
}
List<DutyRunReportVO> handerRunReportList = dutyReportVOList.stream().filter(s -> s.getGroupId().equals(handerCollect.get(0).getDutyGroupId().toString())).collect(Collectors.toList()); List<DutyRunReportVO> handerRunReportList = dutyReportVOList.stream().filter(s -> s.getGroupId().equals(handerCollect.get(0).getDutyGroupId().toString())).collect(Collectors.toList());
DutyRunReportVO handerRunRepor = handerRunReportList.get(0); DutyRunReportVO handerRunRepor = handerRunReportList.get(0);
handerRunRepor.setExceptionChangeShifts(handerRunRepor.getExceptionChangeShifts()+1); handerRunRepor.setExceptionChangeShifts(handerRunRepor.getExceptionChangeShifts()+1);
}else { }else {
//交接班延迟,交接班组都+1 //交接班延迟,交接班组都+1
List<ImsDutyMainEntity> collect = imsDutyMainEntityList.stream().filter(s -> rec.getDutyId().equals(s.getId())).collect(Collectors.toList()); List<ImsDutyMainEntity> collect = imsDutyMainEntityList.stream().filter(s -> rec.getDutyId().equals(s.getId())).collect(Collectors.toList());
List<DutyRunReportVO> troubleRunReportList = dutyReportVOList.stream().filter(s -> s.getGroupId().equals(collect.get(0).getDutyGroupId().toString())).collect(Collectors.toList()); if(CollectionUtil.isNotEmpty(collect)) {
DutyRunReportVO troubleRunReport = troubleRunReportList.get(0); List<DutyRunReportVO> troubleRunReportList = dutyReportVOList.stream().filter(s -> s.getGroupId().equals(collect.get(0).getDutyGroupId().toString())).collect(Collectors.toList());
troubleRunReport.setExceptionChangeShifts(troubleRunReport.getExceptionChangeShifts()+1); DutyRunReportVO troubleRunReport = troubleRunReportList.get(0);
troubleRunReport.setExceptionChangeShifts(troubleRunReport.getExceptionChangeShifts() + 1);
}
List<ImsDutyMainEntity> handerCollect = imsDutyMainEntityList.stream().filter(s -> rec.getDutyId().equals(s.getPreDutyId())).collect(Collectors.toList()); List<ImsDutyMainEntity> handerCollect = imsDutyMainEntityList.stream().filter(s -> rec.getDutyId().equals(s.getPreDutyId())).collect(Collectors.toList());
List<DutyRunReportVO> handerRunReportList = dutyReportVOList.stream().filter(s -> s.getGroupId().equals(handerCollect.get(0).getDutyGroupId().toString())).collect(Collectors.toList()); if(CollectionUtil.isNotEmpty(handerCollect)) {
DutyRunReportVO handerRunRepor = handerRunReportList.get(0); List<DutyRunReportVO> handerRunReportList = dutyReportVOList.stream().filter(s -> s.getGroupId().equals(handerCollect.get(0).getDutyGroupId().toString())).collect(Collectors.toList());
handerRunRepor.setExceptionChangeShifts(handerRunRepor.getExceptionChangeShifts()+1); DutyRunReportVO handerRunRepor = handerRunReportList.get(0);
handerRunRepor.setExceptionChangeShifts(handerRunRepor.getExceptionChangeShifts() + 1);
}
} }
} }
} }

135
hzims-service/operational/src/main/java/com/hnac/hzims/operational/report/service/impl/MonthReportServiceImpl.java

@ -34,69 +34,80 @@ import java.util.List;
@Slf4j @Slf4j
public class MonthReportServiceImpl extends ServiceImpl<MonthReportMapper, OperMonthReportEntity> implements IMonthReportService { public class MonthReportServiceImpl extends ServiceImpl<MonthReportMapper, OperMonthReportEntity> implements IMonthReportService {
private final IOperPersonalMonthReportService operPersonalMonthReportService; private final IOperPersonalMonthReportService operPersonalMonthReportService;
private final IOperStationMonthReportService operStationMonthReportService; private final IOperStationMonthReportService operStationMonthReportService;
private final ISysClient sysClient; private final ISysClient sysClient;
@Override @Override
public StationRunReportAllVO getStationMonthReportByStationCode(Long deptId, String month) throws Exception { public StationRunReportAllVO getStationMonthReportByStationCode(Long deptId, String month) throws Exception {
StationRunReportAllVO stationReportAllVO = new StationRunReportAllVO(); StationRunReportAllVO stationReportAllVO = new StationRunReportAllVO();
Dept dept = sysClient.getDept(deptId).getData(); Dept dept = sysClient.getDept(deptId).getData();
OperMonthReportEntity operMonthReportEntity = this.getOne(new LambdaQueryWrapper<OperMonthReportEntity>(){{ OperMonthReportEntity operMonthReportEntity = this.getOne(new LambdaQueryWrapper<OperMonthReportEntity>() {{
eq(OperMonthReportEntity::getMonth,month); eq(OperMonthReportEntity::getMonth, month);
eq(OperMonthReportEntity::getStationCode, dept.getId()); eq(OperMonthReportEntity::getStationCode, dept.getId());
eq(OperMonthReportEntity::getIsDeleted, 0); eq(OperMonthReportEntity::getIsDeleted, 0);
orderByDesc(OperMonthReportEntity::getObject); orderByDesc(OperMonthReportEntity::getCreateTime);
last("limit 1;"); last("limit 1;");
}}); }});
//查询实时数据 //查询实时数据
if(ObjectUtil.isEmpty(operMonthReportEntity)){ if (ObjectUtil.isEmpty(operMonthReportEntity)) {
stationReportAllVO = operStationMonthReportService.getStationMonthReportV2(month, BeanUtil.copy(dept, DeptVO.class)); stationReportAllVO = operStationMonthReportService.getStationMonthReportV2(month, BeanUtil.copy(dept, DeptVO.class));
} if (ObjectUtil.isNotEmpty(stationReportAllVO)) {
//历史查询定时任务生成的数据 OperMonthReportEntity saved = new OperMonthReportEntity();
else{ saved.setMonth(month);
stationReportAllVO = ObjectUtil.isNotEmpty(operMonthReportEntity) ? (StationRunReportAllVO) ObjectHelper.byte2obj(operMonthReportEntity.getObject()) saved.setType(DictConstant.MONTH_REPORT_STATION);
: operStationMonthReportService.getStationMonthReportV2(month, BeanUtil.copy(dept, DeptVO.class)); saved.setCreateDept(deptId);
} saved.setStationCode(deptId.toString());
return stationReportAllVO; try {
} saved.setObject(ObjectHelper.obj2byte(stationReportAllVO));
} catch (IOException e) {
log.error("生成统计月报失败{}", e.toString());
e.printStackTrace();
}
//修改为每运行一次,保存一次
this.save(operMonthReportEntity);
}
}
//历史查询定时任务生成的数据
else {
stationReportAllVO = ObjectUtil.isNotEmpty(operMonthReportEntity) ? (StationRunReportAllVO) ObjectHelper.byte2obj(operMonthReportEntity.getObject())
: operStationMonthReportService.getStationMonthReportV2(month, BeanUtil.copy(dept, DeptVO.class));
}
return stationReportAllVO;
}
@Override @Override
public void setStationMonthReportByStationCode(Long deptId, String month){ public void setStationMonthReportByStationCode(Long deptId, String month) {
Dept deptVO = sysClient.getDept(deptId).getData(); Dept deptVO = sysClient.getDept(deptId).getData();
log.info("---{}机构---",deptVO.getDeptName()); log.info("---{}机构---", deptVO.getDeptName());
//查询该电站该月报是否已生成月报 //查询该电站该月报是否已生成月报
OperMonthReportEntity operMonthReportEntityByMonth = this.getOne(new LambdaQueryWrapper<OperMonthReportEntity>() {{ OperMonthReportEntity operMonthReportEntityByMonth = this.getOne(new LambdaQueryWrapper<OperMonthReportEntity>() {{
eq(OperMonthReportEntity::getMonth, month); eq(OperMonthReportEntity::getMonth, month);
eq(OperMonthReportEntity::getType, DictConstant.MONTH_REPORT_STATION); eq(OperMonthReportEntity::getType, DictConstant.MONTH_REPORT_STATION);
eq(OperMonthReportEntity::getStationCode, deptVO.getId()); eq(OperMonthReportEntity::getStationCode, deptVO.getId());
eq(OperMonthReportEntity::getIsDeleted, 0); eq(OperMonthReportEntity::getIsDeleted, 0);
last("limit 1;"); last("limit 1;");
}}); }});
if (ObjectUtil.isNotEmpty(operMonthReportEntityByMonth)) {
if (ObjectUtil.isEmpty(operMonthReportEntityByMonth)||month.equals(YearMonth.now().toString())) { this.removeById(operMonthReportEntityByMonth.getId());
if (ObjectUtil.isNotEmpty(operMonthReportEntityByMonth)){ }
this.removeById(operMonthReportEntityByMonth.getId()); //按站点生成各电站运维月报
} StationRunReportAllVO stationReportAllVO = operStationMonthReportService.getStationMonthReportV2(month, BeanUtil.copy(deptVO, DeptVO.class));
//按站点生成各电站运维月报 if (ObjectUtil.isNotEmpty(stationReportAllVO)) {
StationRunReportAllVO stationReportAllVO = operStationMonthReportService.getStationMonthReportV2(month, BeanUtil.copy(deptVO, DeptVO.class)); OperMonthReportEntity operMonthReportEntity = new OperMonthReportEntity();
if (ObjectUtil.isNotEmpty(stationReportAllVO)) { operMonthReportEntity.setMonth(month);
OperMonthReportEntity operMonthReportEntity = new OperMonthReportEntity(); operMonthReportEntity.setType(DictConstant.MONTH_REPORT_STATION);
operMonthReportEntity.setMonth(month); operMonthReportEntity.setCreateDept(deptVO.getId());
operMonthReportEntity.setType(DictConstant.MONTH_REPORT_STATION); operMonthReportEntity.setStationCode(deptVO.getId().toString());
operMonthReportEntity.setCreateDept(deptVO.getId()); try {
operMonthReportEntity.setStationCode(deptVO.getId().toString()); operMonthReportEntity.setObject(ObjectHelper.obj2byte(stationReportAllVO));
try { } catch (IOException e) {
operMonthReportEntity.setObject(ObjectHelper.obj2byte(stationReportAllVO)); log.error("生成统计月报失败{}", e.toString());
} catch (IOException e) { e.printStackTrace();
e.printStackTrace(); }
} //修改为每运行一次,保存一次
//修改为每运行一次,保存一次 this.save(operMonthReportEntity);
this.save(operMonthReportEntity); }
} }
} else {
log.info("该月{}已生成月报", deptVO.getDeptName());
}
}
} }

Loading…
Cancel
Save