|
@@ -152,19 +152,22 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
if (ObjectUtil.isEmpty(project)) return false;
|
|
|
//项目结束时间默认增加三个月
|
|
|
LocalDate endDate = project.getEndDate().plusMonths(3);
|
|
|
- //获取当前的保养时间
|
|
|
- LocalDate currentTime = LocalDate.now();
|
|
|
//获取当前期数
|
|
|
Integer periods = request.getPeriods();
|
|
|
//获取当前电梯的保养间隔
|
|
|
ProjectLiftRelevance entry = projectLiftRelevanceService.getOne(mtCompanyId, liftId);
|
|
|
if (ObjectUtil.isEmpty(entry)) return false;
|
|
|
int interval = entry.getPlanInterval();
|
|
|
- List<MaintenancePlan> planList = maintenancePlanService.findPlanList(liftId, projectId, mtCompanyId, currentTime);
|
|
|
+ List<MaintenancePlan> planList = maintenancePlanService.findPlanList(liftId, projectId, mtCompanyId, request.getCurrentTime());
|
|
|
//获取当前时间后的维保计划列表,并清除计划
|
|
|
maintenancePlanService.removeByIds(planList.stream().map(MaintenancePlan::getId).collect(Collectors.toList()));
|
|
|
//按照修改时间重新生成计划
|
|
|
- List<MaintenancePlan> plans = maintenancePlanService.generatePlan(plan, periods, interval, currentTime, endDate);
|
|
|
+ List<MaintenancePlan> plans = maintenancePlanService.generatePlan(plan, periods, interval, request.getCurrentTime(), endDate);
|
|
|
+ for (MaintenancePlan p : plans) {
|
|
|
+ if (request.getCurrentTime().equals(p.getPlanDate())) {
|
|
|
+ p.setStatus(Integer.parseInt(CommonEnum.MaintenancePlanStatus.MAINTENANCE_DOING.getCode()));
|
|
|
+ }
|
|
|
+ }
|
|
|
return maintenancePlanService.saveBatch(plans, plans.size());
|
|
|
}
|
|
|
|
|
@@ -181,6 +184,7 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
Long mtCompanyId = record.getMtCompanyId();
|
|
|
Long workerId = record.getWorkerId();
|
|
|
Long liftId = record.getLiftId();
|
|
|
+ request.setCurrentTime(LocalDate.now());
|
|
|
//校验电梯是否定位
|
|
|
String liftCoordinate = getCoordinate(liftId);
|
|
|
if (StrUtil.isEmpty(liftCoordinate)) return RestResponse.fail(MessageUtils.get("msg.lift.not.position"));
|
|
@@ -206,6 +210,13 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
if (!modifyPlan) {
|
|
|
return RestResponse.fail(MessageUtils.get("msg.modify.fail"));
|
|
|
}
|
|
|
+ } else {
|
|
|
+ plan.setStatus(Integer.parseInt(CommonEnum.MaintenancePlanStatus.MAINTENANCE_DOING.getCode()));
|
|
|
+ boolean planResult = maintenancePlanService.updateById(plan);
|
|
|
+ if (!planResult) {
|
|
|
+ rollback();
|
|
|
+ return RestResponse.fail(MessageUtils.get("msg.add.fail"));
|
|
|
+ }
|
|
|
}
|
|
|
Optional<Lift> lift = liftService.getOne(null, liftId);
|
|
|
if (lift.isPresent()) {
|
|
@@ -221,12 +232,6 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
rollback();
|
|
|
return RestResponse.fail(MessageUtils.get("msg.add.fail"));
|
|
|
}
|
|
|
- plan.setStatus(Integer.parseInt(CommonEnum.MaintenancePlanStatus.MAINTENANCE_DOING.getCode()));
|
|
|
- boolean planResult = maintenancePlanService.updateById(plan);
|
|
|
- if (!planResult){
|
|
|
- rollback();
|
|
|
- return RestResponse.fail(MessageUtils.get("msg.add.fail"));
|
|
|
- }
|
|
|
} else {
|
|
|
return RestResponse.fail(MessageUtils.get("msg.add.fail"));
|
|
|
}
|