| | |
| | | @Value("${wms.url}") |
| | | private String wmsUrl; |
| | | public ArrayList<String> wharfCode1 = new ArrayList<String>(){{ |
| | | add("J-1101"); add("J-1103"); add("J-1105"); add("J-1107"); add("J-1109"); add("J-1111"); |
| | | add("J-1101"); add("J-1103"); add("J-1105"); add("J-1107"); add("J-1109"); add("J-1111");add("H-1101"); |
| | | add("G-1101"); |
| | | }}; |
| | | |
| | | |
| | | |
| | | @Override |
| | | public void taskCreate(taskCreateParam param) { |
| | | public R taskCreate(taskCreateParam param) { |
| | | TaskWrk taskWrk = taskWrkService.selectByTaskNo(param.getTaskNo()); |
| | | if (taskWrk != null) { |
| | | throw new CoolException(param.getTaskNo() + "任务已存在,请勿重复提交"); |
| | |
| | | taskWrk.setCrnNo(param.getCrn()); |
| | | if(param.getIoType() == 1){ |
| | | taskWrk.setWrkSts(1); |
| | | if (!Cools.isEmpty(param.getTargetPoint())) { |
| | | taskWrk.setTargetPoint(Utils.getWcsLocNo(param.getTargetPoint()));//终点 |
| | | taskWrk.setOriginTargetPoint(param.getTargetPoint()); |
| | | } |
| | | |
| | | } else if (param.getIoType() == 2) { |
| | | taskWrk.setWrkSts(11); |
| | | if (!Cools.isEmpty(param.getStartPoint())) { |
| | | taskWrk.setStartPoint(Utils.getWcsLocNo(param.getStartPoint()));//起点 |
| | | taskWrk.setOriginStartPoint(param.getStartPoint()); |
| | | } |
| | | taskWrk.setTargetPoint(param.getTargetPoint()); |
| | | }else if (param.getIoType() == 3){ |
| | | taskWrk.setWrkSts(11); |
| | | if (!Cools.isEmpty(param.getStartPoint())) { |
| | | taskWrk.setStartPoint(Utils.getWcsLocNo(param.getStartPoint()));//起点 |
| | | taskWrk.setOriginStartPoint(param.getStartPoint()); |
| | | } |
| | | } |
| | | |
| | | if (!Cools.isEmpty(param.getStartPoint())) { |
| | | taskWrk.setStartPoint(Utils.getWcsLocNo(param.getStartPoint()));//起点 |
| | | taskWrk.setOriginStartPoint(param.getStartPoint()); |
| | | } |
| | | if (!Cools.isEmpty(param.getTargetPoint())) { |
| | | taskWrk.setTargetPoint(Utils.getWcsLocNo(param.getTargetPoint()));//终点 |
| | | taskWrk.setOriginTargetPoint(param.getTargetPoint()); |
| | | } |
| | | |
| | | |
| | | if (!Cools.isEmpty(param.getMemo())) { |
| | | taskWrk.setMemo(param.getMemo());//备注 |
| | | } |
| | | |
| | | if (!taskWrkService.insert(taskWrk)) { |
| | | throw new CoolException("生成任务失败,请联系管理员"); |
| | | return R.error("创建任务失败"); |
| | | } |
| | | return R.ok(); |
| | | } |
| | | |
| | | @Override |
| | |
| | | .eq("type_no",1) |
| | | .ge("crn_stn",200)); |
| | | } |
| | | //map1.put("taskTunnel", staDesc.getStnDesc()); |
| | | map1.put("taskTunnel", "J-1104"); |
| | | map1.put("taskTunnel", staDesc.getStnDesc()); |
| | | //map1.put("taskTunnel", "J-1104"); |
| | | return R.ok(map1); |
| | | } |
| | | return R.error((String) jsonObject.get("msg")); |
| | |
| | | |
| | | @Override |
| | | public void getAgvTaskOver(TaskOverParam param) { |
| | | // Map<String,Integer> map = new HashMap<>(); |
| | | // put("J-1101",102);put("J-1102",101); |
| | | // put("J-1103",106);put("J-1104",105); |
| | | // put("J-1105",110);put("J-1106",109); |
| | | // put("J-1107",114);put("J-1108",113); |
| | | // put("J-1109",118);put("J-1110",117); |
| | | // put("J-1111",122);put("J-1112",121); |
| | | // put("H-1101",305);put("H-1102",300); |
| | | // 根据输送线plc遍历 |
| | | for (DevpSlave devp : slaveProperties.getDevp()) { |
| | | StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() |
| | |
| | | staProtocol = staProtocol.clone(); |
| | | } |
| | | Short workNo = staProtocol.getWorkNo(); |
| | | for (DevpSlave.Sta inSta : devp.getInSta()) { |
| | | if (inSta.getBackSta().equals(staDesc.getStnNo())){ |
| | | if (wharfCode1.contains(param.getWharfCode())){ |
| | | if (!staProtocol.isLoading() && !staProtocol.isCar()){ |
| | | //AGV出库完成以后 |
| | | } |
| | | if (wharfCode1.contains(param.getWharfCode())){ |
| | | if (!staProtocol.isLoading() && !staProtocol.isCar() && staProtocol.getWorkNo() >0){ |
| | | //AGV出库完成以后 |
| | | staProtocol.setWorkNo((short) 0); |
| | | staProtocol.setStaNo((short)0); |
| | | boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(3, staProtocol)); |
| | | if (result) { |
| | | |
| | | }else { |
| | | } else { |
| | | throw new RuntimeException("agv返回完成后,命令下发失败"); |
| | | } |
| | | } |
| | | }else { |
| | | for (DevpSlave.Sta inSta : devp.getInSta()) { |
| | | if (inSta.getBackSta().equals(staDesc.getStnNo())){ |
| | | |
| | | if (staProtocol.isLoading() && !staProtocol.isCar() && workNo == 0){ |
| | | //AGV入库完成以后 |
| | | staProtocol.setWorkNo((short) 9999); |
| | |
| | | throw new RuntimeException("agv返回完成后,命令下发失败"); |
| | | } |
| | | } |
| | | |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | | } |