| | |
| | | basAgvMast.setTaskNo(wrkMast.getWrkNo()); |
| | | basAgvMast.setSourceStaNo(outStaAgv.getStaNo()); |
| | | basAgvMast.setLocNo(dto.getLocNo()); |
| | | basAgvMast.setSourceLocNo(wrkMast.getSourceLocNo()); |
| | | basAgvMast.setDevpId(devp.getId()); |
| | | basAgvMast.setIoType(2); |
| | | |
| | |
| | | } |
| | | } |
| | | |
| | | /* |
| | | * agv任务生成 Empty |
| | | * */ |
| | | public synchronized void agvTaskCreateR() { |
| | | // 根据输送线plc遍历 |
| | | for (DevpSlave devp : slaveProperties.getDevp()) { |
| | | // 遍历出库口 |
| | | for (DevpSlave.Sta inStaAgv : devp.getInStaAgv()) { |
| | | // 获取入库站信息 |
| | | SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId()); |
| | | StaProtocol staProtocol = devpThread.getStation().get(inStaAgv.getStaNo()); |
| | | if (staProtocol == null) { |
| | | continue; |
| | | } else { |
| | | staProtocol = staProtocol.clone(); |
| | | } |
| | | |
| | | // 判断是否满足入库条件 |
| | | if (staProtocol.isLoading()){ |
| | | continue; |
| | | } |
| | | |
| | | if (staProtocol.isAutoing()) { |
| | | |
| | | // 判断重复工作档 |
| | | List<BasAgvMast> basAgvMastList = basAgvMastService.selectList(new EntityWrapper<BasAgvMast>().eq("sta_no", inStaAgv.getStaNo())); |
| | | if (!basAgvMastList.isEmpty()) { |
| | | News.info("{}号站点存在任务执行中,等待任务执行完毕!!!", inStaAgv.getStaNo()); |
| | | continue; |
| | | } |
| | | // 任务生成区 -------------------------------------------------------------------------- |
| | | |
| | | BasAgvMast basAgvMast = new BasAgvMast(); |
| | | try { |
| | | List<LocMast> locMastList = locMastService.selectList(new EntityWrapper<LocMast>() |
| | | .eq("loc_sts", "D") |
| | | .ge("row1", 23) |
| | | .le("row1", 32) |
| | | .orderBy("io_time",true) |
| | | ); |
| | | |
| | | for (LocMast locMast : locMastList){ |
| | | basAgvMast.setTaskNo(inStaAgv.getStaNo()); |
| | | basAgvMast.setSourceLocNo(locMast.getLocNo()); |
| | | basAgvMast.setStaNo(inStaAgv.getStaNo()); |
| | | basAgvMast.setDevpId(devp.getId()); |
| | | basAgvMast.setIoType(0);//AGV库位==》输送线站点 0 |
| | | basAgvMastService.insert(basAgvMast); |
| | | break; |
| | | } |
| | | |
| | | } catch (Exception e) { |
| | | News.error(JSON.toJSONString(e.getMessage())); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | /* |
| | | * agv任务下发:AGV库位==》输送线站点 |