package com.zy.asrs.utils; import com.core.common.Arith; import com.core.common.Cools; import com.zy.core.properties.SlaveProperties; import java.text.DecimalFormat; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; /** * Created by vincent on 2020/8/27 */ public class RouteUtils { // 正序 public static final List TRACK_POSITION_POSITIVE_SEQUENCE = new ArrayList() {{ add(1);add(2);add(3);add(4);add(5);add(6);add(7);add(8);add(9);add(10);add(11);add(12); }}; // 反序 public static final List TRACK_POSITION_REVERSE_SEQUENCE = new ArrayList() {{ add(12);add(11);add(10);add(9);add(8);add(7);add(6);add(5);add(4);add(3);add(2);add(1); }}; public static String zerofill(String msg, Integer count){ if (msg.length() == count){ return msg; } else if (msg.length() > count){ return msg.substring(0, 16); } else { StringBuilder msgBuilder = new StringBuilder(msg); for (int i = 0; i getRoute(Integer groupStart,Integer groupEnd){ boolean sign = groupStart < groupEnd; List result = new ArrayList<>(); List groupRoute = new ArrayList<>(); if (sign){ groupRoute = TRACK_POSITION_POSITIVE_SEQUENCE; }else { groupRoute = TRACK_POSITION_REVERSE_SEQUENCE; } if (groupRoute.contains(groupStart) && groupRoute.contains(groupEnd)) { sign = false; for (Integer route : groupRoute) { if (route.equals(groupStart)){ sign=true; } if (route.equals(groupEnd)){ result.add(route); break; } if (sign){ result.add(route); } } }else { return null; } return result; } // 外侧方向的货位 优先入库方向/优先出库方向 ===>> 反之 public static List getGroupOutsideLoc(String locNo,Integer crnNo){ List result = new ArrayList<>(); return result; } }