From 95f54b8b7dbc42b7cdeb497145bc07484e41423d Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期一, 11 十一月 2024 13:57:51 +0800 Subject: [PATCH] # --- zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java | 1 + zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/ActionService.java | 4 ++++ zy-acs-manager/src/main/resources/mapper/manager/ActionMapper.xml | 22 ++++++++++++++++++++++ zy-acs-manager/src/main/java/com/zy/acs/manager/fake/FakeProcessor.java | 17 +++++++++++++++++ zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Action.java | 1 + zy-acs-manager/src/main/java/com/zy/acs/manager/manager/mapper/ActionMapper.java | 3 +++ zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/ActionServiceImpl.java | 6 ++++++ 7 files changed, 54 insertions(+), 0 deletions(-) diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java index 89d03da..e4f93bf 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java @@ -1081,6 +1081,7 @@ for (Action action : actionList) { action.setActionSts(ActionStsType.ISSUED.val()); action.setStartTime(now); + action.setIoTime(now); action.setUpdateTime(now); if (!actionService.updateById(action)) { throw new BusinessException(action.getPriority() + " - " + action.getName() + "鍔ㄤ綔鏇存柊澶辫触"); diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/fake/FakeProcessor.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/fake/FakeProcessor.java index 9587fab..11bd3a9 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/fake/FakeProcessor.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/fake/FakeProcessor.java @@ -4,9 +4,13 @@ import com.zy.acs.common.constant.RedisConstant; import com.zy.acs.common.domain.AgvProtocol; import com.zy.acs.common.utils.RedisSupport; +import com.zy.acs.framework.common.Cools; +import com.zy.acs.manager.manager.entity.Action; import com.zy.acs.manager.manager.entity.Agv; import com.zy.acs.manager.manager.entity.AgvDetail; +import com.zy.acs.manager.manager.enums.ActionStsType; import com.zy.acs.manager.manager.enums.StatusType; +import com.zy.acs.manager.manager.service.ActionService; import com.zy.acs.manager.manager.service.AgvDetailService; import com.zy.acs.manager.manager.service.AgvService; import com.zy.acs.manager.system.service.ConfigService; @@ -29,6 +33,8 @@ @Autowired private AgvDetailService agvDetailService; @Autowired + private ActionService actionService; + @Autowired private ConfigService configService; /** @@ -49,11 +55,22 @@ for (Agv agv : agvList) { AgvDetail agvDetail = agvDetailService.selectByAgvId(agv.getId()); + this.processRunning(agv); + this.processOnline(agv); } } + private void processRunning(Agv agv) { + List<Action> actionList = actionService.queryLatestGroup(agv.getId(), ActionStsType.ISSUED); + if (!Cools.isEmpty(actionList)) { + for (Action action : actionList) { + + } + } + } + private void processOnline(Agv agv) { redis.setObject(RedisConstant.AGV_ONLINE_FLAG, agv.getUuid(), 1, 30); } diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Action.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Action.java index 19ff4f9..f4d9cbe 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Action.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Action.java @@ -57,6 +57,7 @@ /** * 浼樺厛绾� + * The large the value, the earlier it will be executed */ @ApiModelProperty(value= "浼樺厛绾�") private Integer priority; diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/mapper/ActionMapper.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/mapper/ActionMapper.java index 8b26bbd..fbade3c 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/mapper/ActionMapper.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/mapper/ActionMapper.java @@ -20,4 +20,7 @@ List<Long> selectTaskIdsByGroupId(@Param("groupId") String groupId); List<String> selectSortCodeByAgv(@Param("agvId") Long agvId); + + List<Action> selectLatestOfGroup(@Param("agvId") Long agvId, @Param("actionSts") Long actionSts); + } diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/ActionService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/ActionService.java index baa0260..ab25e0d 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/ActionService.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/ActionService.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.zy.acs.manager.manager.entity.Action; +import com.zy.acs.manager.manager.enums.ActionStsType; import java.util.List; import java.util.Map; @@ -21,4 +22,7 @@ List<Action> optimizeSort(List<Action> actionList); List<String> getPathListByAgv(String agvNo); + + List<Action> queryLatestGroup(Long agvId, ActionStsType actionSts); + } diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/ActionServiceImpl.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/ActionServiceImpl.java index c651a33..80c01df 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/ActionServiceImpl.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/ActionServiceImpl.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.zy.acs.manager.manager.entity.Action; import com.zy.acs.manager.manager.entity.Agv; +import com.zy.acs.manager.manager.enums.ActionStsType; import com.zy.acs.manager.manager.enums.ActionTypeType; import com.zy.acs.manager.manager.mapper.ActionMapper; import com.zy.acs.manager.manager.service.ActionService; @@ -111,4 +112,9 @@ return this.baseMapper.selectSortCodeByAgv(agv.getId()); } + @Override + public List<Action> queryLatestGroup(Long agvId, ActionStsType actionSts) { + return this.baseMapper.selectLatestOfGroup(agvId, actionSts.val()); + } + } diff --git a/zy-acs-manager/src/main/resources/mapper/manager/ActionMapper.xml b/zy-acs-manager/src/main/resources/mapper/manager/ActionMapper.xml index aa35574..488e2fb 100644 --- a/zy-acs-manager/src/main/resources/mapper/manager/ActionMapper.xml +++ b/zy-acs-manager/src/main/resources/mapper/manager/ActionMapper.xml @@ -96,4 +96,26 @@ ORDER BY ma.priority DESC </select> + <select id="selectLatestOfGroup" resultType="com.zy.acs.manager.manager.entity.Action"> + SELECT * + FROM man_action + WHERE 1=1 + AND agv_id = #{agvId} + AND action_sts = #{actionSts} + AND group_id IN ( + SELECT group_id + FROM man_action + WHERE agv_id = #{agvId} + AND action_sts = #{actionSts} + GROUP BY group_id + HAVING MAX(io_time) = ( + SELECT MAX(io_time) + FROM man_action + WHERE agv_id = #{agvId} + AND action_sts = #{actionSts} + ) + ) + ORDER BY priority DESC + </select> + </mapper> -- Gitblit v1.9.1