From 7548470ab9785f11369e0b7b435bf909f1414635 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期一, 07 十月 2024 10:51:10 +0800 Subject: [PATCH] # --- zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/MissionServiceImpl.java | 50 ++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 48 insertions(+), 2 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 5a69ed7..24adf5a 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,15 +2,18 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.zy.acs.framework.common.Cools; +import com.zy.acs.manager.common.exception.BusinessException; import com.zy.acs.manager.manager.controller.result.MissionVo; import com.zy.acs.manager.manager.entity.*; +import com.zy.acs.manager.manager.enums.ActionStsType; +import com.zy.acs.manager.manager.enums.BusStsType; 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.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.List; +import java.util.*; import java.util.stream.Collectors; /** @@ -117,7 +120,50 @@ if (Cools.isEmpty(actionList)) { return Boolean.FALSE; } + String actionGroupId = actionService.getById(actionList.get(0).getId()).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()); + action.setActionSts(ActionStsType.PREPARE.val()); + action.setIoTime(now); + action.setUpdateTime(now); + newActionList.add(action); + } + int i = newActionList.size(); + for (Action action : newActionList) { + action.setPriority(i); + if (!actionService.save(action)) { + throw new BusinessException(action.getName() + "鍔ㄤ綔鏇存柊澶辫触"); + } + i -= 1; + } + Set<Long> busIds = new HashSet<>(); + List<Long> taskIds = actionService.selectTaskIdsByGroupId(actionGroupId); + for (Long taskId : taskIds) { + Task task = taskService.getById(taskId); + if (null != task) { + task.setTaskSts(TaskStsType.ASSIGN.val()); + task.setUpdateTime(now); + task.setIoTime(now); + if (!taskService.updateById(task)) { + throw new BusinessException(task.getUuid() + "浠诲姟鏇存柊澶辫触"); + } + busIds.add(task.getBusId()); + } + } + for (Long busId : busIds) { + Bus bus = busService.getById(busId); + if (null != bus) { + bus.setBusSts(BusStsType.PROGRESS.val()); + bus.setUpdateTime(now); + if (!busService.updateById(bus)) { + throw new BusinessException(bus.getUuid() + "鎬荤嚎鏇存柊澶辫触"); + } + } + } return Boolean.TRUE; } -- Gitblit v1.9.1