| | |
| | | package com.zy.common.utils; |
| | | |
| | | import com.core.common.SpringUtils; |
| | | import com.zy.asrs.utils.Utils; |
| | | import com.zy.common.model.NavigateNode; |
| | | import com.zy.common.model.NyShuttleOperaResult; |
| | |
| | | * 获取起点到目标点行走命令 |
| | | */ |
| | | public static NyShuttleOperaResult getStartToTargetCommands(Integer shuttleNo, Integer wrkNo, String startPoint, String targetPoint, Integer mapType) { |
| | | NavigateMapUtils navigateMapUtils = SpringUtils.getBean(NavigateMapUtils.class); |
| | | //计算起点到目标点行走节点 |
| | | List<NavigateNode> calc = NavigateUtils.calc(startPoint, targetPoint, mapType, Utils.getShuttlePoints(shuttleNo, Utils.getLev(targetPoint))); |
| | | List<NavigateNode> calc = NavigateUtils.calc(startPoint, targetPoint, mapType, Utils.getShuttlePoints(shuttleNo, Utils.getLev(startPoint))); |
| | | if (calc == null) { |
| | | return null; |
| | | } |
| | | |
| | | //命令集合 |
| | | ArrayList<NyShuttleHttpCommand> commands = new ArrayList<>(); |
| | | List<NavigateNode> allNode = new ArrayList<>(); |
| | | |
| | | //获取分段路径 |
| | | ArrayList<ArrayList<NavigateNode>> data = NavigateUtils.getSectionPath(calc); |
| | |
| | | NyShuttleHttpCommand moveCommand = NyHttpUtils.getMoveCommand(shuttleNo, wrkNo, startPath, targetPath); |
| | | moveCommand.setNodes(nodes);//将行走节点添加到每一步命令中 |
| | | commands.add(moveCommand); |
| | | |
| | | allNode.addAll(nodes); |
| | | } |
| | | |
| | | navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(startPoint), allNode, true);//锁定路径 |
| | | return result(commands, calc); |
| | | } |
| | | |