|
@@ -131,14 +131,15 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
*/
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public boolean modifyPlan(MaintenanceRecordRequest request) {
|
|
|
+ MaintenanceRecord record = request.getRecord();
|
|
|
//获取公司id
|
|
|
- Long mtCompanyId = request.getMtCompanyId();
|
|
|
+ Long mtCompanyId = record.getMtCompanyId();
|
|
|
//获取电梯id
|
|
|
- Long liftId = request.getLiftId();
|
|
|
+ Long liftId = record.getLiftId();
|
|
|
//获取项目id
|
|
|
- Long projectId = request.getProjectId();
|
|
|
+ Long projectId = record.getProjectId();
|
|
|
//获取维保工id
|
|
|
- Long workerId = request.getUserId();
|
|
|
+ Long workerId = record.getWorkerId();
|
|
|
MaintenancePlan plan = new MaintenancePlan();
|
|
|
plan.setProjectId(projectId);
|
|
|
plan.setMtCompanyId(mtCompanyId);
|
|
@@ -148,9 +149,10 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
Project project = new Project();
|
|
|
if (optional.isPresent()) project = optional.get();
|
|
|
if (ObjectUtil.isEmpty(project)) return false;
|
|
|
- LocalDate endDate = project.getEndDate();
|
|
|
+ //项目结束时间默认增加三个月
|
|
|
+ LocalDate endDate = project.getEndDate().plusMonths(3);
|
|
|
//获取当前的保养时间
|
|
|
- LocalDate currentTime = request.getCurrentTime();
|
|
|
+ LocalDate currentTime = LocalDate.now();
|
|
|
//获取当前期数
|
|
|
Integer periods = request.getPeriods();
|
|
|
//获取当前电梯的保养间隔
|
|
@@ -159,7 +161,7 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
int interval = entry.getPlanInterval();
|
|
|
List<MaintenancePlan> planList = maintenancePlanService.findPlanList(liftId, projectId, mtCompanyId, currentTime);
|
|
|
//获取当前时间后的维保计划列表,并清除计划
|
|
|
- removeByIds(planList.stream().map(MaintenancePlan::getId).collect(Collectors.toList()));
|
|
|
+ maintenancePlanService.removeByIds(planList.stream().map(MaintenancePlan::getId).collect(Collectors.toList()));
|
|
|
//按照修改时间重新生成计划
|
|
|
List<MaintenancePlan> plans = maintenancePlanService.generatePlan(plan, periods, interval, currentTime, endDate);
|
|
|
return maintenancePlanService.saveBatch(plans, plans.size());
|
|
@@ -194,6 +196,11 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
boolean result = calc(liftCoordinate, coordinate);
|
|
|
if (result)
|
|
|
return RestResponse.fail(MessageUtils.get("msg.error.person.scope"));
|
|
|
+ //若提前保养,需要修改维保计划
|
|
|
+ boolean modifyPlan = modifyPlan(request);
|
|
|
+ if (!modifyPlan){
|
|
|
+ return RestResponse.fail(MessageUtils.get("msg.modify.fail"));
|
|
|
+ }
|
|
|
Optional<Lift> lift = liftService.getOne(null, liftId);
|
|
|
if (lift.isPresent()) {
|
|
|
Lift l = lift.get();
|
|
@@ -207,6 +214,7 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
record.setPlanDate(plan.getPlanDate());
|
|
|
boolean ret = save(record);
|
|
|
if (!ret) {
|
|
|
+ rollback();
|
|
|
return RestResponse.fail(MessageUtils.get("msg.add.fail"));
|
|
|
}
|
|
|
plan.setStatus(Integer.parseInt(CommonEnum.MaintenancePlanStatus.MAINTENANCE_DOING.getCode()));
|
|
@@ -218,12 +226,6 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
} else {
|
|
|
return RestResponse.fail(MessageUtils.get("msg.add.fail"));
|
|
|
}
|
|
|
- //若提前保养,需要修改维保计划
|
|
|
- boolean modifyPlan = modifyPlan(request);
|
|
|
- if (!modifyPlan){
|
|
|
- rollback();
|
|
|
- return RestResponse.fail(MessageUtils.get("msg.modify.fail"));
|
|
|
- }
|
|
|
return RestResponse.success(record.getId(), MessageUtils.get("msg.add.success"));
|
|
|
}
|
|
|
|