From fd0dc8eec755272d9b5adfd58369195db55173c4 Mon Sep 17 00:00:00 2001 From: zhang <zc857179121@qq.com> Date: 星期三, 25 六月 2025 10:36:12 +0800 Subject: [PATCH] 1 --- zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/AgvDetailServiceImpl.java | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 52 insertions(+), 2 deletions(-) diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/AgvDetailServiceImpl.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/AgvDetailServiceImpl.java index 5b6a942..e432eec 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/AgvDetailServiceImpl.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/AgvDetailServiceImpl.java @@ -4,9 +4,13 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.zy.acs.manager.manager.entity.Agv; import com.zy.acs.manager.manager.entity.AgvDetail; +import com.zy.acs.manager.manager.entity.AgvModel; +import com.zy.acs.manager.manager.entity.Code; import com.zy.acs.manager.manager.mapper.AgvDetailMapper; import com.zy.acs.manager.manager.service.AgvDetailService; +import com.zy.acs.manager.manager.service.AgvModelService; import com.zy.acs.manager.manager.service.AgvService; +import com.zy.acs.manager.manager.service.CodeService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -15,6 +19,15 @@ @Autowired private AgvService agvService; + @Autowired + private AgvModelService agvModelService; + @Autowired + private CodeService codeService; + + @Override + public AgvDetail selectMajorByAgvId(Long agvId) { + return this.baseMapper.selectMajorByAgvId(agvId); + } @Override public AgvDetail selectByAgvId(Long agvId) { @@ -23,8 +36,7 @@ @Override public AgvDetail selectByAgvNo(String agvNo) { - Agv agv = agvService.selectByUuid(agvNo); - return this.selectByAgvId(agv.getId()); + return this.selectByAgvId(agvService.getAgvId(agvNo)); } @Override @@ -33,13 +45,51 @@ } @Override + public Boolean updatePosCodeByAgvId(Long agvId, Long codeId) { + return this.baseMapper.updatePosCodeByAgvId(agvId, codeId) > 0; + } + + @Override public Boolean updateUnPosCode(Long id, Long codeId) { return this.baseMapper.updateUnPosCode(id, codeId) > 0; } @Override + public Boolean updateAngleByAgvId(Long agvId, Double angle) { + return this.baseMapper.updateAngleByAgvId(agvId, angle); + } + + @Override public Boolean removeByAgvId(Long agvId) { return baseMapper.delete(new LambdaQueryWrapper<AgvDetail>().eq(AgvDetail::getAgvId, agvId)) > 0; } + @Override + public Boolean isPowerLoss(Agv agv, AgvDetail agvDetail, AgvModel agvModel) { + if (null == agvDetail) { + agvDetail = this.selectMajorByAgvId(agv.getId()); + } + if (null == agvModel) { + agvModel = agvModelService.getByAgvId(agv.getId()); + } + if (null == agv.getChargeLine()) { + return agvDetail.getVol() < agvModel.getLowBattery(); + } else { + return agvDetail.getVol() < Math.max(agv.getChargeLine(), agvModel.getLowBattery()); + } + } + + @Override + public Code getCurrentCode(Long agvId) { + AgvDetail agvDetail = this.selectMajorByAgvId(agvId); + if (null == agvDetail) { + return null; + } + Long recentCode = agvDetail.getRecentCode(); + if (null == recentCode) { + return null; + } + return codeService.getCacheById(recentCode); + } + } -- Gitblit v1.9.1