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/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java | 46 +++------------------------------------------- 1 files changed, 3 insertions(+), 43 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java index a0a1d4e..4351669 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java @@ -24,6 +24,7 @@ import org.jeecg.modules.eam.request.EamEquipmentQuery; import org.jeecg.modules.eam.service.IEamEquipmentExtendService; import org.jeecg.modules.eam.service.IEamEquipmentService; +import org.jeecg.modules.eam.service.IEamThirdMaintenanceWorkPlanSheetService; import org.jeecg.modules.eam.vo.EamEquipmentTree; import org.jeecg.modules.eam.vo.EquipmentSearchResult; import org.jeecg.modules.system.entity.BaseFactory; @@ -335,7 +336,7 @@ if (eamEquipment.getNextThirdMaintenance() != null && eamEquipment.getThirdMaintenancePeriod() != null) { - calculateMaintenanceDates( + org.jeecg.common.util.DateUtils.calculateMaintenanceDates( eamEquipment.getNextThirdMaintenance(), eamEquipment.getThirdMaintenancePeriod(), newDate -> eamEquipment.setNextThirdMaintenance(newDate), @@ -347,7 +348,7 @@ if (eamEquipment.getNextTechnologyCheck() != null && eamEquipment.getTechnologyCheckPeriod() != null) { - calculateMaintenanceDates( + org.jeecg.common.util.DateUtils.calculateMaintenanceDates( eamEquipment.getNextTechnologyCheck(), eamEquipment.getTechnologyCheckPeriod(), newDate -> eamEquipment.setNextTechnologyCheck(newDate), @@ -444,47 +445,6 @@ return Result.OK(items); }catch (Exception e) { return Result.error("鏁版嵁杞瘧澶辫触锛�"); - } - } - - // 鏃ユ湡璁$畻宸ュ叿鏂规硶 - private void calculateMaintenanceDates(Date nextDate, Integer periodYears, - Consumer<Date> setNextMaintenance, - Consumer<Date> setLatestMaintenance) { - if (nextDate == null || periodYears == null || periodYears <= 0) { - return; - } - - // 杞崲涓篔ava 8鏃ユ湡绫诲瀷 - LocalDate nextLocal = nextDate.toInstant().atZone(ZoneId.systemDefault()).toLocalDate(); - LocalDate today = LocalDate.now(); - - // 纭繚鏈夋晥鐨勮绠楀懆鏈� - int period = Math.max(1, periodYears); // 闃叉浼犲叆0鎴栬礋鍊� - - if (nextLocal.isAfter(today)) { - // 鏈繃鏈燂細璁$畻鏈�杩戠淮鎶ゆ棩鏈� - setLatestMaintenance.accept( - Date.from(nextLocal.minusYears(period).atStartOfDay() - .atZone(ZoneId.systemDefault()).toInstant()) - ); - } else { - // 宸茶繃鏈燂細璁$畻鏂扮殑涓嬫缁存姢鏃ユ湡 - while (!nextLocal.isAfter(today)) { - nextLocal = nextLocal.plusYears(period); - } - - // 璁剧疆鏂版棩鏈� - setNextMaintenance.accept( - Date.from(nextLocal.atStartOfDay() - .atZone(ZoneId.systemDefault()).toInstant()) - ); - - // 璁$畻鏈�杩戠淮鎶ゆ棩鏈� - setLatestMaintenance.accept( - Date.from(nextLocal.minusYears(period).atStartOfDay() - .atZone(ZoneId.systemDefault()).toInstant()) - ); } } -- Gitblit v1.9.3