From eda0ec8e97499e151cc254aaedfe4894573865c8 Mon Sep 17 00:00:00 2001 From: zhang <zc857179121@qq.com> Date: 星期二, 17 六月 2025 08:32:21 +0800 Subject: [PATCH] 1 --- zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/MissionServiceImpl.java | 26 ++++++++++++++++++++------ 1 files changed, 20 insertions(+), 6 deletions(-) diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/MissionServiceImpl.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/MissionServiceImpl.java index 6634b81..f205ea9 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/MissionServiceImpl.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/MissionServiceImpl.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.zy.acs.framework.common.Cools; +import com.zy.acs.framework.exception.CoolException; import com.zy.acs.manager.common.exception.BusinessException; import com.zy.acs.manager.manager.controller.result.MissionVo; import com.zy.acs.manager.manager.entity.*; @@ -10,6 +11,7 @@ import com.zy.acs.manager.manager.enums.SegmentStateType; import com.zy.acs.manager.manager.enums.TaskStsType; import com.zy.acs.manager.manager.service.*; +import org.apache.ibatis.session.SqlSession; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -35,6 +37,8 @@ private TaskService taskService; @Autowired private BusService busService; + @Autowired + private SqlSession sqlSession; @Override public List<MissionVo> getList(Long agvId, String groupNo) { @@ -67,12 +71,18 @@ Long recentCode = agvDetail.getRecentCode(); String currCode = null; if (null != recentCode) { - currCode = codeService.getById(recentCode).getData(); + Code cacheById = codeService.getCacheById(recentCode); + if (cacheById != null) { + currCode = cacheById.getData(); + } else { + throw new CoolException(segment.getAgvId() + "灏忚溅杩樺湪鍒犻櫎鐨勭偣浣嶄腑"); + } + } // action ------------------------------- List<Action> actionList = actionService.list(new LambdaQueryWrapper<Action>() - .eq(Action::getGroupId, groupNo).orderByDesc(Action::getPriority)); + .eq(Action::getGroupId, groupNo).ne(Action::getActionSts, ActionStsType.EXPIRED.val()).orderByDesc(Action::getPriority)); if (Cools.isEmpty(actionList)) { return null; } @@ -101,7 +111,7 @@ return null; } List<Action> actionList = actionService.list(new LambdaQueryWrapper<Action>() - .eq(Action::getGroupId, groupNo).orderByDesc(Action::getPriority)); + .eq(Action::getGroupId, groupNo).ne(Action::getActionSts, ActionStsType.EXPIRED.val()).orderByDesc(Action::getPriority)); if (Cools.isEmpty(actionList)) { return null; } @@ -124,12 +134,16 @@ if (Cools.isEmpty(actionList)) { return Boolean.FALSE; } - String actionGroupId = actionService.getById(actionList.get(0).getId()).getGroupId(); + List<Long> actionIds = actionList.stream().map(Action::getId).collect(Collectors.toList()); + + String actionGroupId = actionService.getById(actionIds.get(0)).getGroupId(); actionService.updateStsByGroupId(actionGroupId, ActionStsType.EXPIRED.val()); + List<Action> newActionList = new ArrayList<>(); Date now = new Date(); - for (Action item : actionList) { - Action action = actionService.getById(item.getId()); + for (Long actionId : actionIds) { + sqlSession.clearCache(); + Action action = actionService.getById(actionId); action.setActionSts(ActionStsType.PREPARE.val()); action.setIoTime(now); action.setUpdateTime(now); -- Gitblit v1.9.1