From 500f6ce071c0bc14d6720354ce148599ac3f35ee Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期五, 25 十月 2024 15:38:42 +0800 Subject: [PATCH] # --- zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/AgvServiceImpl.java | 30 ++++++++++++++++++------------ 1 files changed, 18 insertions(+), 12 deletions(-) diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/AgvServiceImpl.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/AgvServiceImpl.java index 59e06fd..336317f 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/AgvServiceImpl.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/AgvServiceImpl.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.zy.acs.common.constant.RedisConstant; import com.zy.acs.common.enums.AgvStatusType; -import com.zy.acs.common.utils.JudgeSupport; import com.zy.acs.common.utils.RedisSupport; import com.zy.acs.framework.common.Cools; import com.zy.acs.manager.common.domain.BaseParam; @@ -67,19 +66,19 @@ @Override public Boolean judgeEnable(Long agvId) { - return this.judgeEnable(agvId, null); + return this.judgeEnable(agvId, false); } @Override - public Boolean judgeEnable(Long agvId, JudgeSupport<AgvDetail> support) { + public Boolean judgeEnable(Long agvId, Boolean withBattery) { Agv agv = this.getById(agvId); AgvModel agvModel = agvModelService.getById(agv.getAgvModel()); if (segmentService.count(new LambdaQueryWrapper<Segment>() - .eq(Segment::getAgvId, agvId) - .and( i -> { + .eq(Segment::getAgvId, agvId) + .and( i -> { // i.eq(Segment::getState, SegmentStateType.WAITING.toString()).or() - i.eq(Segment::getState, SegmentStateType.RUNNING.toString()); - }) + i.eq(Segment::getState, SegmentStateType.RUNNING.toString()); + }) ) > 0) { log.warn("[{}]鍙稟gv姝e湪蹇欑 -segment......", agv.getUuid()); return false; @@ -105,17 +104,24 @@ return false; } } - if (support != null) { - if (!support.execute(agvDetail)) { - return false; - } - } if (!agvDetail.getAgvStatus().equals(AgvStatusType.CHARGE)) { if (agvDetail.getPos() != 1) { log.warn("[{}]鍙稟gv褰撳墠涓嶅湪瀹氫綅......", agv.getUuid()); return false; } } + // with battery + if (withBattery) { + if (agvDetail.getVol() < agv.getChargeLine()) { + log.warn("[{}]鍙稟gv鐢甸噺涓嶈冻......", agv.getUuid()); + return false; + } + if (agvDetail.getVol() < agvModel.getLowBattery()) { + log.warn("[{}]鍙稟gv鐢甸噺涓嶈冻......", agv.getUuid()); + return false; + } + } + return true; } -- Gitblit v1.9.1