| | |
| | | import com.core.common.Cools; |
| | | import com.core.common.DateUtils; |
| | | import com.core.common.R; |
| | | import com.core.common.SpringUtils; |
| | | import com.core.exception.CoolException; |
| | | import com.zy.asrs.domain.enums.LedErrorAreaType; |
| | | import com.zy.asrs.domain.enums.WorkNoType; |
| | |
| | | public class MainServiceImpl { |
| | | |
| | | public static final long COMMAND_TIMEOUT = 5 * 1000; |
| | | // private static final int[][] execute = new int[][]{{1,4},{2,4},{3,4},{4,4},{5,6},{6,6},{7,4},{8,4},{9,3},{10,4},{11,4}}; |
| | | private static final int[][] execute = new int[][]{{1,4},{2,4},{3,4},{4,4},{5,6},{6,6},{7,4},{8,4},{9,3},{10,4},{11,4}}; |
| | | |
| | | // private static final Integer jarMaxLoc1 = 7; |
| | | private static Integer jarMaxLoc = 0; |
| | | // private static Integer signBigTurn = 0; |
| | | // private static Integer signSmallTurn = 0; |
| | | private static final Float jarTemperature = 50F; |
| | | @Autowired |
| | | private CommonService commonService; |
| | |
| | | staProtocolOther1 = staProtocolOther1.clone(); |
| | | } |
| | | |
| | | if (staProtocolOther1.isAutoing() || staProtocolOther1.getWorkNo()!=0){ |
| | | if (staProtocolOther1.isLoading() || !staProtocolOther1.getWorkNo().equals(0)){ |
| | | return; |
| | | } |
| | | |
| | |
| | | } else { |
| | | staProtocolOther2 = staProtocolOther2.clone(); |
| | | } |
| | | if (staProtocolOther2.isAutoing() || staProtocolOther2.getWorkNo()!=0){ |
| | | if (staProtocolOther2.isLoading() || !staProtocolOther2.getWorkNo().equals(0)){ |
| | | return; |
| | | } |
| | | } |
| | |
| | | continue; |
| | | } |
| | | |
| | | Integer turnBigInt = 0; |
| | | if (wrkMast.booleanStaNoSign()){ |
| | | RgvOneSign rgvOneSign = rgvOneSignMapper.selectOneSign("LineUp"+wrkMast.getStaNo()); |
| | | if (Cools.isEmpty(rgvOneSign)){ |
| | | continue; |
| | | } |
| | | if (rgvOneSign.getRgvOneSign()>=2){ |
| | | RgvOneSign trunBig = rgvOneSignMapper.selectOneSign("TrunBig"+wrkMast.getStaNo()); |
| | | if (Cools.isEmpty(trunBig)){ |
| | | continue; |
| | | } |
| | | turnBigInt = trunBig.getRgvOneSign(); |
| | | int wrkCount = wrkMastMapper.selectCount(new EntityWrapper<WrkMast>().eq("sta_no", wrkMast.getStaNo()).eq("wrk_sts",12L)); |
| | | |
| | | if (trunBig.getRgvOneSign()+wrkCount+rgvOneSign.getRgvOneSign()>2){ |
| | | continue; |
| | | } |
| | | // int wrkCount = wrkMastMapper.selectCount(new EntityWrapper<WrkMast>().eq("io_type", 110).gt("sta_no", 309).lt("sta_no", 314).gt("wrk_sts",11L)); |
| | |
| | | crnCommand.setDestinationPosX((short)0); // 目标库位排 |
| | | crnCommand.setDestinationPosY((short)0); // 目标库位列 |
| | | crnCommand.setDestinationPosZ((short)0); // 目标库位层 |
| | | if (wrkMast.booleanStaNoSign()){ |
| | | updateRgvOneSign("TrunBig"+wrkMast.getStaNo(),turnBigInt+1); |
| | | } |
| | | if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(crnStation==1? 2:5, crnCommand))) { |
| | | log.error("堆垛机命令下发失败,堆垛机号={},任务数据={}", wrkMast.getCrnNo(), JSON.toJSONString(crnCommand)); |
| | | } else { |
| | |
| | | // signBigTurn = 0; |
| | | // } |
| | | |
| | | } |
| | | |
| | | public void updateRgvOneSign(String signType,Integer oneSign){ |
| | | RgvOneSignMapper rgvOneSignMapper = SpringUtils.getBean(RgvOneSignMapper.class); |
| | | |
| | | try{ |
| | | RgvOneSign rgvOneSign = rgvOneSignMapper.selectOneSign(signType); |
| | | if (!Cools.isEmpty(rgvOneSign)){ |
| | | rgvOneSign.setRgvOneSign(oneSign); |
| | | rgvOneSignMapper.updateById(rgvOneSign); |
| | | } |
| | | } catch (Exception e){ |
| | | RgvOneSign rgvOneSign = rgvOneSignMapper.selectOneSign(signType); |
| | | if (!Cools.isEmpty(rgvOneSign)){ |
| | | rgvOneSign.setRgvOneSign(999); |
| | | rgvOneSignMapper.updateById(rgvOneSign); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | |
| | | } else { |
| | | staProtocol = staProtocol.clone(); |
| | | } |
| | | if (emptyInSta.getStaNo()==607 && staProtocol.getStaNo()==0 && staProtocol.getWorkNo()==0 |
| | | if (emptyInSta.getStaNo()==607 && staProtocol.getStaNo()==0 && staProtocol.getWorkNo().equals(0) |
| | | && staProtocol.isLoading() && staProtocol.isAutoing() && staProtocol.isInEnable()){ |
| | | String barcode = staProtocol.getBarcode(); |
| | | if (!Cools.isEmpty(barcode)) { |
| | |
| | | /** |
| | | * ste充电任务创建 //完成 |
| | | */ |
| | | public synchronized void signTrunBig() { |
| | | updateRgvOneSign("TrunSma126",0); |
| | | updateRgvOneSign("TrunSma131",0); |
| | | updateRgvOneSign("TrunBig310",0); |
| | | updateRgvOneSign("TrunBig312",0); |
| | | } |
| | | |
| | | public synchronized boolean jarChargeGenerate() { |
| | | try{ |
| | | //80%电量 无任务 充电 >50电量 有任务 断电 |