From 3e0f519c396ac8a72e7bbd426e4f38fa6cc403dc Mon Sep 17 00:00:00 2001 From: zhuguifei <zhuguifei@zhuguifeideiMac.local> Date: 星期五, 14 三月 2025 16:50:34 +0800 Subject: [PATCH] 点检模块 --- eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/job/MaintPlanToOrderJob.java | 73 ++++++++++++------------------------ 1 files changed, 25 insertions(+), 48 deletions(-) diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/job/MaintPlanToOrderJob.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/job/MaintPlanToOrderJob.java index 1058f6d..2e2b6af 100644 --- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/job/MaintPlanToOrderJob.java +++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/job/MaintPlanToOrderJob.java @@ -3,10 +3,7 @@ import com.aizuda.snailjob.client.job.core.annotation.JobExecutor; import com.aizuda.snailjob.client.job.core.dto.JobArgs; import com.aizuda.snailjob.client.model.ExecuteResult; -import com.aizuda.snailjob.common.core.util.JsonUtil; -import com.aizuda.snailjob.common.log.SnailJobLog; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; import lombok.SneakyThrows; @@ -14,18 +11,11 @@ import org.dromara.common.core.utils.DateUtils; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.eims.domain.*; -import org.dromara.eims.domain.bo.EimsMaintPlanBo; import org.dromara.eims.domain.vo.EimsMaintPlanVo; -import org.dromara.eims.domain.vo.EimsMaintStandVo; import org.dromara.eims.mapper.EimsMaintOrderMapper; -import org.dromara.eims.mapper.EimsMaintOrditmMapper; import org.dromara.eims.mapper.EimsMaintPlanMapper; -import org.dromara.eims.mapper.EimsMaintStandMapper; -import org.dromara.eims.service.IEimsMaintOrderService; -import org.dromara.eims.service.IEimsMaintPlanService; import org.dromara.eims.service.IGenerateCodeService; import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; @@ -38,9 +28,6 @@ public class MaintPlanToOrderJob { private final EimsMaintOrderMapper orderMapper; - private final EimsMaintStandMapper standMapper; - - private final EimsMaintOrditmMapper orditmMapper; private final EimsMaintPlanMapper planMapper; @@ -56,8 +43,6 @@ LambdaQueryWrapper<EimsMaintPlan> planBoQueryWrapper = Wrappers.lambdaQuery(); // 鏌ヨ鍚敤鐨勪繚鍏昏鍒� planBoQueryWrapper.eq(EimsMaintPlan::getStatus, DictConstants.SYS_NORMAL_DISABLE_DETAIL.NORMAL); - // 杩囨护娌℃湁棣栨杩愯鏃堕棿 - planBoQueryWrapper.isNotNull(EimsMaintPlan::getMaintFirstTime); // 杩囨护娌℃湁涓嬫杩愯鏃堕棿 planBoQueryWrapper.isNotNull(EimsMaintPlan::getMaintNextTime); // 杩囨护娌℃湁淇濆吇鍛ㄦ湡鐨勬暟鎹� @@ -69,8 +54,8 @@ for (int i = 0; i < planVoList.size(); i++) { EimsMaintPlanVo planVo = planVoList.get(i); // 淇濆吇璁″垝add鐨勬椂鍊欎細鑷姩鐢熸垚涓嬫杩愯鏃堕棿 - Date createOrderTime = planVo.getMaintNextTime(); - int day = DateUtils.differentDays(today,createOrderTime ); + Date oldNext = planVo.getMaintNextTime(); + int day = DateUtils.differentDays(today, oldNext); // 濡傛灉璁″垝鐢熸垚宸ュ崟鏃ユ湡澶т簬浠婂ぉ鍒欎笉鐢熸垚宸ュ崟 if (day >= 1) { continue; @@ -81,61 +66,53 @@ String maintRule = planVo.getMaintRule(); Date firstTime = planVo.getMaintFirstTime(); Date lastTime = planVo.getMaintLastTime(); - Date nextTime = null; + Date newNext = null; String maintCycleUnit = planVo.getMaintCycleUnit(); switch (maintCycleUnit) { case DictConstants.MAINT_CYCLE_UNIT_DETAIL.DAY: + newNext = DateUtils.addDays(oldNext, maintCycle.intValue()); break; case DictConstants.MAINT_CYCLE_UNIT_DETAIL.WEEK: - maintCycle *= 7; + + newNext = DateUtils.addWeeks(oldNext, maintCycle.intValue()); + break; case DictConstants.MAINT_CYCLE_UNIT_DETAIL.MONTH: - maintCycle *= 30; + + newNext = DateUtils.addMonths(oldNext, maintCycle.intValue()); + break; case DictConstants.MAINT_CYCLE_UNIT_DETAIL.SEASON: - maintCycle *= 90; + newNext = DateUtils.addMonths(oldNext, maintCycle.intValue() * 3); + break; case DictConstants.MAINT_CYCLE_UNIT_DETAIL.YEAR: - maintCycle *= 365; + + newNext = DateUtils.addYears(oldNext, maintCycle.intValue()); + break; } - // 棣栨 - if (lastTime == null ) { - nextTime = DateUtils.addDays(createOrderTime, maintCycle.intValue()); - } else { - nextTime = DateUtils.addDays(lastTime, maintCycle.intValue()); - } + EimsMaintOrder order = new EimsMaintOrder(); BeanUtils.copyProperties(planVo, order); order.setId(null); order.setStatus(DictConstants.MAINT_ORDER_STATUS_DETAIL.DAIBAOYANG); - order.setPlanTime(createOrderTime); + order.setPlanTime(oldNext); + order.setPlanId(planVo.getId()); + order.setMaintName(planVo.getMaintName()); order.setMaintCode(codeService.generateCode("BYZD")); EimsMaintPlan plan = MapstructUtils.convert(planVo, EimsMaintPlan.class); assert plan != null; - plan.setLastGenerateDate(new Date()); - plan.setMaintLastTime(createOrderTime); - plan.setMaintNextTime(nextTime); - boolean flag = orderMapper.insert(order) > 0; + plan.setLastOrderDate(new Date()); + plan.setMaintLastTime(oldNext); + plan.setMaintNextTime(newNext); + if(plan.getMaintFirstTime()==null)plan.setMaintFirstTime(oldNext); + boolean flag = orderMapper.insert(order) > 0; //TODO 鐢熸垚澶辫触锛屾坊鍔犲紓甯歌褰� if (!flag) continue; planMapper.updateById(plan); - //鐢熸垚淇濆吇鏄庣粏 - Long equId = plan.getEquId(); - List<EimsMaintStandVo> standList = standMapper.selectVoList(new LambdaQueryWrapper<EimsMaintStand>().eq(EimsMaintStand::getEquId, equId)); - //TODO 娌℃湁淇濆吇椤癸紝娣诲姞寮傚父璁板綍 - if(standList.isEmpty()) continue; - for (int j = 0; j < standList.size(); j++) { - EimsMaintStandVo stand = standList.get(j); - EimsMaintOrditm itm = new EimsMaintOrditm(); - itm.setOrderId(order.getId()); - itm.setEquId(equId); - itm.setItmName(stand.getName()); - itm.setItmAction(stand.getStand()); - itm.setItmUser(order.getMaintUser()); - orditmMapper.insert(itm); - } + } return ExecuteResult.success("淇濆吇璁″垝鐢熸垚淇濆吇宸ュ崟鎴愬姛"); } -- Gitblit v1.9.3