From ebd2f4397a92c6a5096de1b86d59154363344720 Mon Sep 17 00:00:00 2001 From: vincentlu <t1341870251@gmail.com> Date: 星期二, 13 五月 2025 08:48:15 +0800 Subject: [PATCH] # --- zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/JamServiceImpl.java | 23 +++++++++++++++++++++++ 1 files changed, 23 insertions(+), 0 deletions(-) diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/JamServiceImpl.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/JamServiceImpl.java index dbd148b..ecd5db2 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/JamServiceImpl.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/JamServiceImpl.java @@ -7,10 +7,12 @@ import com.zy.acs.manager.manager.entity.Jam; import com.zy.acs.manager.manager.entity.Segment; import com.zy.acs.manager.manager.enums.JamStateType; +import com.zy.acs.manager.manager.enums.SegmentStateType; import com.zy.acs.manager.manager.mapper.JamMapper; import com.zy.acs.manager.manager.service.AgvService; import com.zy.acs.manager.manager.service.CodeService; import com.zy.acs.manager.manager.service.JamService; +import com.zy.acs.manager.manager.service.SegmentService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -26,6 +28,8 @@ private CodeService codeService; @Autowired private AgvService agvService; + @Autowired + private SegmentService segmentService; @Override public Jam getJam(Long agvId, Long jamCode, Long jamSeg) { @@ -97,6 +101,9 @@ } Date now = new Date(); Code code = codeService.getCacheByData(currCodeData); + if (null == code) { + return null; + } List<Jam> jams = this.list(new LambdaQueryWrapper<Jam>() .eq(Jam::getAvoAgv, avoAgv) .eq(Jam::getAvoCode, code.getId()) @@ -127,4 +134,20 @@ return this.updateById(jam); } + @Override + public boolean isAvoidSeg(Long currSeg) { + List<Jam> list = this.list(new LambdaQueryWrapper<Jam>() + .eq(Jam::getAvoSeg, currSeg) + .eq(Jam::getState, JamStateType.RUNNING.toString())); + if (!Cools.isEmpty(list)) { + for (Jam jam : list) { + Segment jamSeg = segmentService.getById(jam.getJamSeg()); + if (jamSeg.getState().equals(SegmentStateType.WAITING.toString()) || jamSeg.getState().equals(SegmentStateType.RUNNING.toString())) { + return true; + } + } + } + return false; + } + } -- Gitblit v1.9.1