package com.zy.asrs.wcs.core.utils; import com.zy.asrs.framework.common.Cools; import java.util.ArrayList; import java.util.List; public class Utils { public static final String _LINK = "-"; /** * 通过库位号获取 排 */ public static int getRow(String locNo) { if (!Cools.isEmpty(locNo)) { String[] split = locNo.split(_LINK); return Integer.parseInt(split[0]); } throw new RuntimeException("库位解析异常"); } /** * 通过库位号获取 列 */ public static int getBay(String locNo) { if (!Cools.isEmpty(locNo)) { String[] split = locNo.split(_LINK); return Integer.parseInt(split[1]); } throw new RuntimeException("库位解析异常"); } /** * 通过库位号获取 层 */ public static int getLev(String locNo) { if (!Cools.isEmpty(locNo)) { String[] split = locNo.split(_LINK); return Integer.parseInt(split[2]); } throw new RuntimeException("库位解析异常"); } public static String getLocNo(Number row, Number bay, Number lev) { return row + _LINK + bay + _LINK + lev; // return zerofill(String.valueOf(row), 2) + zerofill(String.valueOf(bay), 3) + zerofill(String.valueOf(lev), 2); } 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 getShuttlePoints(Integer whiteShuttle, Integer lev) { // SlaveProperties slaveProperties = SpringUtils.getBean(SlaveProperties.class); ArrayList list = new ArrayList<>(); // for (ShuttleSlave slave : slaveProperties.getShuttle()) { // if (slave.getId().intValue() == whiteShuttle) { // continue;//跳过白名单 // } // // //获取穿梭车所在节点位置 // ShuttleThread shuttleThread = (ShuttleThread) SlaveConnection.get(SlaveType.Shuttle, slave.getId()); // if (shuttleThread == null) { // continue; // } // ShuttleProtocol shuttleProtocol = shuttleThread.getShuttleProtocol(); // if (shuttleProtocol == null) { // continue; // } // // if (shuttleProtocol.getCurrentLocNo() == null) { // continue; // } // // if (lev != Utils.getLev(shuttleProtocol.getCurrentLocNo())) { // continue;//楼层不同 // } // // int[] xyPosition = NavigatePositionConvert.positionToXY(shuttleProtocol.getCurrentLocNo());//通过库位号获取xy坐标 // list.add(xyPosition); // } return list; } }