From 0d06048c5d560e301bf17fad476975c8ffffcb56 Mon Sep 17 00:00:00 2001 From: lyh <925863403@qq.com> Date: 星期五, 05 九月 2025 16:07:31 +0800 Subject: [PATCH] 添加三级保养工作计划单生成规则 --- lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java | 40 ++++++++++++++++++++++++++++++++-------- 1 files changed, 32 insertions(+), 8 deletions(-) diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java index a3d1f87..452d3ab 100644 --- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java +++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java @@ -68,6 +68,8 @@ private IBaseFactoryService baseFactoryService; @Autowired private IEamThirdMaintenanceWorkPlanSheetService eamThirdMaintenanceWorkPlanSheetService; + @Autowired + private IEamEquipmentExtendService iEamEquipmentExtendService; @Override @Transactional(rollbackFor = Exception.class) @@ -88,12 +90,9 @@ eamEquipmentExtend.setRepairStatus(EquipmentRepairStatus.NORMAL.name()); equipmentExtendService.save(eamEquipmentExtend); - //涓変繚 - EamThirdMaintenanceWorkPlanSheet eamThirdMaintenanceWorkPlanSheet=new EamThirdMaintenanceWorkPlanSheet(); - BeanUtils.copyProperties(eamEquipment,eamThirdMaintenanceWorkPlanSheet); - eamThirdMaintenanceWorkPlanSheet.setId(null); - eamThirdMaintenanceWorkPlanSheet.setMaintenanceDate(eamEquipment.getLatestThirdMaintenance()); - eamThirdMaintenanceWorkPlanSheetService.add(eamThirdMaintenanceWorkPlanSheet); + // 澶勭悊涓変繚淇濆吇璁″垝锛堜笉鍐嶈繘琛屾棩鏈熸瘮杈冿級 + eamThirdMaintenanceWorkPlanSheetService.createMaintenancePlan(eamEquipment, eamEquipment.getLatestThirdMaintenance()); + eamThirdMaintenanceWorkPlanSheetService.createMaintenancePlan(eamEquipment, eamEquipment.getNextThirdMaintenance()); //鎻掑叆璁惧灞ュ巻 @EquipmentHistoryLog return eamEquipment; @@ -105,9 +104,34 @@ */ @Override public EamEquipment updateEquipment(EamEquipment eamEquipment){ - if (eamEquipment == null) { - return null; + if (eamEquipment == null) return null; + + if (eamEquipment.getNextThirdMaintenance() != null && + eamEquipment.getThirdMaintenancePeriod() != null) { + + org.jeecg.common.util.DateUtils.calculateMaintenanceDates( + eamEquipment.getNextThirdMaintenance(), + eamEquipment.getThirdMaintenancePeriod(), + newDate -> eamEquipment.setNextThirdMaintenance(newDate), + latestDate -> eamEquipment.setLatestThirdMaintenance(latestDate) + ); } + + // 鑾峰彇鏃ф暟鎹� + EamEquipmentExtend old = iEamEquipmentExtendService.getById(eamEquipment.getId()); + if (old == null) return null; + + // 鎻愬彇鏂版棫鏃ユ湡閬垮厤閲嶅璁块棶 + Date newLatest = eamEquipment.getLatestThirdMaintenance(); + Date newNext = eamEquipment.getNextThirdMaintenance(); + Date oldLatest = old.getLatestThirdMaintenance(); + Date oldNext = old.getNextThirdMaintenance(); + + // 澶勭悊淇濆吇鏃ユ湡鍙樻洿 + eamThirdMaintenanceWorkPlanSheetService.processMaintenanceDateChange(eamEquipment, oldLatest, newLatest); + eamThirdMaintenanceWorkPlanSheetService.processMaintenanceDateChange(eamEquipment, oldNext, newNext); + + // 鏇存柊涓昏〃鍜屾墿灞曡〃 eamEquipmentMapper.updateById(eamEquipment); EamEquipmentExtend eamEquipmentExtend = new EamEquipmentExtend(); BeanUtils.copyProperties(eamEquipment, eamEquipmentExtend); -- Gitblit v1.9.3