| | |
| | | } |
| | | |
| | | /* |
| | | * agv任务下发 |
| | | * agv任务下发:AGV库位==》输送线站点 |
| | | * */ |
| | | public synchronized void agvTaskAssignment() { |
| | | public synchronized void agvTaskAssignment0() { |
| | | try{ |
| | | List<BasAgvMast> basAgvMastList = basAgvMastService.selectList(new EntityWrapper<BasAgvMast>().eq("status", 0)); |
| | | for (BasAgvMast basAgvMast : basAgvMastList) { |
| | | if (basAgvMast.getStatus()!=0 && basAgvMast.getIoType()!=3){//3==》出库==>输送线站点==》AGV库位 |
| | | if (basAgvMast.getStatus()!=0 && basAgvMast.getIoType()!=0){//0==》AGV库位==》输送线站点 |
| | | continue; |
| | | } |
| | | try{ |
| | | // 获取站点信息 |
| | | SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, basAgvMast.getDevpId()); |
| | | StaProtocol staProtocol = devpThread.getStation().get(basAgvMast.getStaNo()); |
| | | if (staProtocol == null) { |
| | | continue; |
| | | } else { |
| | | staProtocol = staProtocol.clone(); |
| | | } |
| | | |
| | | if (staProtocol.isAutoing()){ |
| | | |
| | | AgvTaskAssignmentParam agvTaskAssignmentParam = new AgvTaskAssignmentParam(basAgvMast); |
| | | |
| | | //任务下发 |
| | | ReturnT<String> result = new PostMesDataUtils().postMesData("AGV任务下发", AgvConstant.AGV_URL, AgvConstant.AGV_ADAPTOR, agvTaskAssignmentParam); |
| | | if (result.getCode()==200){ |
| | | basAgvMast.setStatus(1); |
| | | basAgvMastService.updateById(basAgvMast); |
| | | } else { |
| | | agvTaskAssignmentCallApiLogSave(basAgvMast, "AGV任务下发失败", "任务号:"+basAgvMast.getTaskNo()+"任务信息下发失败!!!", false); |
| | | } |
| | | } |
| | | } catch (Exception e){ |
| | | log.error("任务号:"+basAgvMast.getTaskNo()+"====》AGV任务下发失败"+e.getMessage()); |
| | | } |
| | | } |
| | | }catch (Exception e){ |
| | | log.error("AGV任务下发失败"+e.getMessage()); |
| | | } |
| | | } |
| | | |
| | | /* |
| | | * agv任务下发:AGV库位==》AGV库位 |
| | | * */ |
| | | public synchronized void agvTaskAssignment1() { |
| | | try{ |
| | | List<BasAgvMast> basAgvMastList = basAgvMastService.selectList(new EntityWrapper<BasAgvMast>().eq("status", 0)); |
| | | for (BasAgvMast basAgvMast : basAgvMastList) { |
| | | if (basAgvMast.getStatus()!=0 && basAgvMast.getIoType()!=1){//1==》AGV库位==》AGV库位 |
| | | continue; |
| | | } |
| | | try{ |
| | | AgvTaskAssignmentParam agvTaskAssignmentParam = new AgvTaskAssignmentParam(); |
| | | |
| | | //任务下发 |
| | | ReturnT<String> result = new PostMesDataUtils().postMesData("AGV任务下发", AgvConstant.AGV_URL, AgvConstant.AGV_ADAPTOR, agvTaskAssignmentParam); |
| | | if (result.getCode()==200){ |
| | | basAgvMast.setStatus(1); |
| | | basAgvMastService.updateById(basAgvMast); |
| | | } else { |
| | | agvTaskAssignmentCallApiLogSave(basAgvMast, "AGV任务下发失败", "任务号:"+basAgvMast.getTaskNo()+"任务信息下发失败!!!", false); |
| | | } |
| | | |
| | | } catch (Exception e){ |
| | | log.error("任务号:"+basAgvMast.getTaskNo()+"====》AGV任务下发失败"+e.getMessage()); |
| | | } |
| | | } |
| | | }catch (Exception e){ |
| | | log.error("AGV任务下发失败"+e.getMessage()); |
| | | } |
| | | } |
| | | |
| | | /* |
| | | * agv任务下发:输送线站点==》AGV库位 |
| | | * */ |
| | | public synchronized void agvTaskAssignment2() { |
| | | try{ |
| | | List<BasAgvMast> basAgvMastList = basAgvMastService.selectList(new EntityWrapper<BasAgvMast>().eq("status", 0)); |
| | | for (BasAgvMast basAgvMast : basAgvMastList) { |
| | | if (basAgvMast.getStatus()!=0 && basAgvMast.getIoType()!=2){//2==》输送线站点==》AGV库位 |
| | | continue; |
| | | } |
| | | try{ |
| | |
| | | } |
| | | } |
| | | |
| | | /* |
| | | * agv任务下发:输送线站点==》输送线站点 |
| | | * */ |
| | | public synchronized void agvTaskAssignment3() { |
| | | try{ |
| | | List<BasAgvMast> basAgvMastList = basAgvMastService.selectList(new EntityWrapper<BasAgvMast>().eq("status", 0)); |
| | | for (BasAgvMast basAgvMast : basAgvMastList) { |
| | | if (basAgvMast.getStatus()!=0 && basAgvMast.getIoType()!=3){//3==》输送线站点==》输送线站点 |
| | | continue; |
| | | } |
| | | try{ |
| | | // 获取站点信息 |
| | | SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, basAgvMast.getDevpId()); |
| | | StaProtocol staProtocol = devpThread.getStation().get(basAgvMast.getSourceStaNo()); |
| | | if (staProtocol == null || !staProtocol.isLoading()) { |
| | | continue; |
| | | } else { |
| | | staProtocol = staProtocol.clone(); |
| | | } |
| | | // 获取站点信息 |
| | | StaProtocol staProtocolEnd = devpThread.getStation().get(basAgvMast.getStaNo()); |
| | | if (staProtocolEnd == null || !staProtocolEnd.isAutoing()) { |
| | | continue; |
| | | } else { |
| | | staProtocolEnd = staProtocolEnd.clone(); |
| | | } |
| | | |
| | | if (!Cools.isEmpty(staProtocol.getWorkNo()) && staProtocol.getWorkNo().equals(basAgvMast.getTaskNo())){ |
| | | |
| | | AgvTaskAssignmentParam agvTaskAssignmentParam = new AgvTaskAssignmentParam(); |
| | | |
| | | //任务下发 |
| | | ReturnT<String> result = new PostMesDataUtils().postMesData("AGV任务下发", AgvConstant.AGV_URL, AgvConstant.AGV_ADAPTOR, agvTaskAssignmentParam); |
| | | if (result.getCode()==200){ |
| | | basAgvMast.setStatus(1); |
| | | basAgvMastService.updateById(basAgvMast); |
| | | } else { |
| | | agvTaskAssignmentCallApiLogSave(basAgvMast, "AGV任务下发失败", "任务号:"+basAgvMast.getTaskNo()+"任务信息下发失败!!!", false); |
| | | } |
| | | } |
| | | } catch (Exception e){ |
| | | log.error("任务号:"+basAgvMast.getTaskNo()+"====》AGV任务下发失败"+e.getMessage()); |
| | | } |
| | | } |
| | | }catch (Exception e){ |
| | | log.error("AGV任务下发失败"+e.getMessage()); |
| | | } |
| | | } |
| | | |
| | | public void agvTaskAssignmentCallApiLogSave(BasAgvMast basAgvMast ,String tableName, String response, Boolean bool) { |
| | | ApiLog apiLog = apiLogService.selectOne(new EntityWrapper<ApiLog>() |
| | | .eq("namespace", "Agv任务下发") |