| | |
| | | public enum SteTaskModeType { |
| | | |
| | | INIT(0, "初始"), // 初始 |
| | | OUT_RIGHT(1, "右出库"), // 右出库 |
| | | OUT_LEFT(2, "左出库"), // 左出库 |
| | | IN_RIGHT(4, "右入库"), // 右入库 |
| | | IN_LEFT(3, "左入库"), // 左入库 |
| | | MOVE_LEFT(5, "左移库"), // 左移库 |
| | | MOVE_RIGHT(6, "右移库"), // 右移库 |
| | | GO_ORIGIN(8, "去右端"), // 回反原点 |
| | | BACK_ORIGIN(7, "去左端"), // 回原点 |
| | | WAITING_RIGHT(10, "右待机"), // A点 |
| | | WAITING_LEFT(9, "左待机"), // B点 |
| | | // FIT_LEFT(11, "左搬移"), // 左搬移 |
| | | // FIT_RIGHT(12, "右搬移"), // 右搬移 |
| | | CHARGE_LEFT(13, "左充电"), // 左充电 |
| | | CHARGE_RIGHT(14, "右充电"), // 左充电 |
| | | // OUT_RIGHT(1, "右出库"), // 右出库 |
| | | // OUT_LEFT(2, "左出库"), // 左出库 |
| | | // IN_RIGHT(4, "右入库"), // 右入库 |
| | | // IN_LEFT(3, "左入库"), // 左入库 |
| | | // MOVE_LEFT(5, "左移库"), // 左移库 |
| | | // MOVE_RIGHT(6, "右移库"), // 右移库 |
| | | // GO_ORIGIN(8, "去右端"), // 回反原点 |
| | | // BACK_ORIGIN(7, "去左端"), // 回原点 |
| | | // WAITING_RIGHT(10, "右待机"), // A点 |
| | | // WAITING_LEFT(9, "左待机"), // B点 |
| | | //// FIT_LEFT(11, "左搬移"), // 左搬移 |
| | | //// FIT_RIGHT(12, "右搬移"), // 右搬移 |
| | | // CHARGE_LEFT(13, "左充电"), // 左充电 |
| | | // CHARGE_RIGHT(14, "右充电"), // 左充电 |
| | | // CHECK_LEFT(14, "左盘点"), // 左盘点 |
| | | // CHECK_RIGHT(15, "右盘点"), // 右盘点 |
| | | CLOSE_CHARGE(17, "断开充电"), // 断开充电 |
| | | STE_YDQH_10(10,"原地取货"), |
| | | STE_YDFH_11(11,"原地放货"), |
| | | STE_WFQH_12(12,"往返取货"), |
| | | STE_WFFH_13(13,"往返放货"), |
| | | STE_MOVE_14(14,"移动"), |
| | | // CLOSE_CHARGE(17, "断开充电"), // 断开充电 |
| | | ; |
| | | |
| | | public Integer id; |
| | |
| | | } |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | public static SteTaskModeType findInByLoc(String locNo, Integer crnNo) { |
| | | switch (SteUtils.getGroupRow(locNo, true, crnNo)) { |
| | | case 2: |
| | | return SteTaskModeType.IN_RIGHT; // 右 |
| | | case 12: |
| | | return SteTaskModeType.IN_LEFT; // 左 |
| | | default: |
| | | throw new CoolException("解析穿梭车原点定位失败"); |
| | | } |
| | | } |
| | | |
| | | public static SteTaskModeType findOutByLoc(String locNo, Integer crnNo) { |
| | | switch (SteUtils.getGroupRow(locNo, false, crnNo)) { |
| | | case 2: |
| | | return SteTaskModeType.OUT_LEFT; // 右 |
| | | case 12: |
| | | return SteTaskModeType.OUT_RIGHT; // 左 |
| | | default: |
| | | throw new CoolException("解析穿梭车原点定位失败"); |
| | | } |
| | | } |
| | | public static SteTaskModeType findOutByLoc2(String locNo, Integer crnNo) { |
| | | switch (SteUtils.getGroupRow(locNo, false, crnNo)) { |
| | | case 2: |
| | | return SteTaskModeType.GO_ORIGIN; // 8 |
| | | case 12: |
| | | return SteTaskModeType.BACK_ORIGIN; // 7 |
| | | default: |
| | | throw new CoolException("解析穿梭车原点定位失败"); |
| | | } |
| | | } |
| | | |
| | | |
| | | // ----------------------------------------------- |
| | | |
| | | // 去待搬点 |
| | | public static SteTaskModeType findOriginByLoc(SteProtocol steProtocol, Integer crnNo) { |
| | | int row = steProtocol.getRow().intValue(); |
| | | if (SteUtils.SHUTTLE_GROUP_ROW_LIST.contains(row)) { |
| | | return crnNo == 1 ? SteTaskModeType.BACK_ORIGIN : SteTaskModeType.GO_ORIGIN; |
| | | } else if (row==13 || row==1){ |
| | | return SteTaskModeType.INIT; |
| | | } else { |
| | | throw new CoolException("解析穿梭车原点定位失败"); |
| | | } |
| | | } |
| | | |
| | | public static SteTaskModeType findOriginByLoc(Integer row, Integer crnNo) { |
| | | if (SteUtils.SHUTTLE_GROUP_ROW_LIST.contains(row)) { |
| | | return crnNo == 1 ? SteTaskModeType.BACK_ORIGIN : SteTaskModeType.GO_ORIGIN; |
| | | } else if (row==13 || row==1){ |
| | | return SteTaskModeType.INIT; |
| | | } else { |
| | | throw new CoolException("解析穿梭车原点定位失败"); |
| | | } |
| | | } |
| | | |
| | | |
| | | public static SteTaskModeType findWaiting(Integer row, Integer crnNo) { |
| | | if (SteUtils.SHUTTLE_GROUP_ROW_LIST.contains(row)) { |
| | | return crnNo == 1 ? SteTaskModeType.WAITING_LEFT : SteTaskModeType.WAITING_RIGHT; |
| | | } else if (row==1||row==13){ |
| | | return SteTaskModeType.INIT; |
| | | } else { |
| | | throw new CoolException("解析穿梭车原点定位失败"); |
| | | } |
| | | } |
| | | |
| | | } |