| | |
| | | import com.core.common.*; |
| | | import com.core.exception.CoolException; |
| | | import com.zy.asrs.entity.*; |
| | | import com.zy.asrs.entity.param.AgvTaskAssignmentParam; |
| | | import com.zy.asrs.entity.param.ArmOrderAssignmentParam; |
| | | import com.zy.asrs.entity.param.ArmTaskAssignmentParam; |
| | | import com.zy.asrs.entity.param.CombParam; |
| | | import com.zy.asrs.entity.param.*; |
| | | import com.zy.asrs.entity.result.OrderDetlValueResultUtil; |
| | | import com.zy.asrs.mapper.*; |
| | | import com.zy.asrs.service.*; |
| | |
| | | devpThread.setPakMk(staProtocol.getSiteId(), false); |
| | | boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); |
| | | log.error("输送线下发2:"+dto.getWorkNo()+","+dto.getStaNo()); |
| | | |
| | | if(staProtocol.getSiteId() == 1036){ //1036 |
| | | BasAgvMast basAgvMast = basAgvMastService.selectOne(new EntityWrapper<BasAgvMast>().eq("sta_no", 1037)); |
| | | AgvBindCtnrAndBinParam agvBindCtnrAndBinParam = new AgvBindCtnrAndBinParam(basAgvMast); |
| | | agvBindCtnrAndBinParam.setCtnrCode(barcode); |
| | | ReturnT<String> resultBind = new PostMesDataUtils().postMesDataAgv("AGV容器绑定解绑", AgvConstant.AGV_URL, AgvConstant.AGV_CTNRANDBING, agvBindCtnrAndBinParam); |
| | | if (resultBind.getCode()!=200){ |
| | | agvTaskAssignmentCallApiLogSave(basAgvMast, "AGV容器绑定解绑", "任务号:"+basAgvMast.getTaskNo()+"任务信息下发失败!!!", false); |
| | | } |
| | | } |
| | | ledThread.errorReset(); |
| | | log.error("组托请求后LED错误清除"); |
| | | |
| | |
| | | if(rgvProtocol.getStatusType1() == RgvStatusType.WORKING){ |
| | | rgvThread.setPaking(true); |
| | | } |
| | | if(rgvProtocol.getTaskNo1() == 0 && rgvProtocol.getTaskNo2() == 0 && rgvProtocol.getStatusType1() == RgvStatusType.IDLE){ |
| | | rgvThread.setPaking(true); |
| | | } |
| | | // if(rgvProtocol.getTaskNo1() == 0 && rgvProtocol.getTaskNo2() == 0 && rgvProtocol.getStatusType1() == RgvStatusType.IDLE){ |
| | | // rgvThread.setPaking(true); |
| | | // } |
| | | if(rgvProtocol.isLoaded1ing() && rgvProtocol.isLoaded2ing()){ |
| | | basRgv.setPakAll("1"); |
| | | basRgvService.updateById(basRgv); |
| | |
| | | JSONObject jsonObject = JSON.parseObject(response); |
| | | if (jsonObject.getInteger("code").equals(200)) { |
| | | StartupDto dto = jsonObject.getObject("data", StartupDto.class); |
| | | |
| | | if(wrkMast.getStaNo()<2000){ |
| | | basAgvMast.setFloorNo(1); |
| | | }else if(wrkMast.getStaNo()<4000){ |
| | | basAgvMast.setFloorNo(2); |
| | | }else{ |
| | | basAgvMast.setFloorNo(3); |
| | | } |
| | | basAgvMast.setTaskNo(wrkMast.getWrkNo()); |
| | | basAgvMast.setSourceStaNo(outStaAgv.getStaNo()); |
| | | basAgvMast.setLocNo(dto.getLocNo()); |
| | |
| | | basAgvMast.setIoType(2); |
| | | |
| | | basAgvMastService.insert(basAgvMast); |
| | | |
| | | |
| | | |
| | | wrkMast.setTakeNone("2"); |
| | |
| | | JSONObject jsonObject = JSON.parseObject(response); |
| | | if (jsonObject.getInteger("code").equals(200)) { |
| | | StartupDto dto = jsonObject.getObject("data", StartupDto.class); |
| | | |
| | | basAgvMast.setTaskNo(outStaAgv.getStaNo()); |
| | | basAgvMast.setSourceStaNo(outStaAgv.getStaNo()); |
| | | basAgvMast.setLocNo(dto.getLocNo()); |
| | | basAgvMast.setDevpId(devp.getId()); |
| | | basAgvMast.setIoType(2); |
| | | basAgvMast.setFloorNo(2); |
| | | |
| | | basAgvMastService.insert(basAgvMast); |
| | | } else { |
| | |
| | | } |
| | | try{ |
| | | // 获取站点信息 |
| | | SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, basAgvMast.getDevpId()); |
| | | SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, basAgvMast.getFloorNo() !=1?2:1); |
| | | StaProtocol staProtocol = devpThread.getStation().get(basAgvMast.getStaNo()); |
| | | if (staProtocol == null) { |
| | | continue; |
| | |
| | | if (staProtocol.isAutoing()){ |
| | | |
| | | AgvTaskAssignmentParam agvTaskAssignmentParam = new AgvTaskAssignmentParam(basAgvMast); |
| | | |
| | | //任务下发 |
| | | ReturnT<String> result = new PostMesDataUtils().postMesDataAgv("AGV任务下发", AgvConstant.AGV_URL, AgvConstant.AGV_ADAPTOR, agvTaskAssignmentParam); |
| | | if (result.getCode()==200){ |
| | |
| | | } |
| | | try{ |
| | | // 获取站点信息 |
| | | SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, basAgvMast.getDevpId()); |
| | | SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, basAgvMast.getFloorNo() !=1?2:1); |
| | | StaProtocol staProtocol = devpThread.getStation().get(basAgvMast.getSourceStaNo()); |
| | | if (staProtocol == null || !staProtocol.isLoading()) { |
| | | continue; |
| | |
| | | (basAgvMast.getSourceStaNo().equals(2033))){ |
| | | |
| | | AgvTaskAssignmentParam agvTaskAssignmentParam = new AgvTaskAssignmentParam(basAgvMast); |
| | | |
| | | //任务下发 |
| | | ReturnT<String> result = new PostMesDataUtils().postMesDataAgv("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); |
| | | if(basAgvMast.getFloorNo()==1) { |
| | | WrkMast wrkMast = wrkMastService.selectByWrkNo(staProtocol.getWorkNo()); |
| | | AgvBindCtnrAndBinParam agvBindCtnrAndBinParam = new AgvBindCtnrAndBinParam(basAgvMast); |
| | | agvBindCtnrAndBinParam.setCtnrCode(wrkMast.getBarcode()); |
| | | agvBindCtnrAndBinParam.setCtnrTyp("1"); |
| | | ReturnT<String> resultBind = new PostMesDataUtils().postMesDataAgv("AGV容器绑定解绑", AgvConstant.AGV_URL, AgvConstant.AGV_CTNRANDBING, agvBindCtnrAndBinParam); |
| | | if (resultBind.getCode()==200){ |
| | | //任务下发 |
| | | ReturnT<String> result = new PostMesDataUtils().postMesDataAgv("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); |
| | | } |
| | | } else { |
| | | agvTaskAssignmentCallApiLogSave(basAgvMast, "AGV容器绑定解绑", "任务号:"+basAgvMast.getTaskNo()+"任务信息下发失败!!!", false); |
| | | } |
| | | }else{ |
| | | //任务下发 |
| | | ReturnT<String> result = new PostMesDataUtils().postMesDataAgv("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()); |
| | |
| | | } |
| | | try{ |
| | | // 获取站点信息 |
| | | SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, basAgvMast.getDevpId()); |
| | | SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, basAgvMast.getFloorNo() !=1?2:1); |
| | | StaProtocol staProtocol = devpThread.getStation().get(basAgvMast.getSourceStaNo()); |
| | | if (staProtocol == null || !staProtocol.isLoading()) { |
| | | continue; |
| | |
| | | if (!Cools.isEmpty(staProtocol.getWorkNo()) && staProtocol.getWorkNo().equals(basAgvMast.getTaskNo())){ |
| | | |
| | | AgvTaskAssignmentParam agvTaskAssignmentParam = new AgvTaskAssignmentParam(basAgvMast); |
| | | |
| | | // AgvBindCtnrAndBinParam agvBindCtnrAndBinParam = new AgvBindCtnrAndBinParam(basAgvMast); |
| | | // |
| | | // ReturnT<String> resultBind = new PostMesDataUtils().postMesDataAgv("AGV容器绑定解绑", AgvConstant.AGV_URL, AgvConstant.AGV_ADAPTOR, agvBindCtnrAndBinParam); |
| | | // if (resultBind.getCode()==200){ |
| | | // //任务下发 |
| | | // ReturnT<String> result = new PostMesDataUtils().postMesDataAgv("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); |
| | | // } |
| | | // } else { |
| | | // agvTaskAssignmentCallApiLogSave(basAgvMast, "AGV容器绑定解绑", "任务号:"+basAgvMast.getTaskNo()+"任务信息下发失败!!!", false); |
| | | // } |
| | | //任务下发 |
| | | ReturnT<String> result = new PostMesDataUtils().postMesDataAgv("AGV任务下发", AgvConstant.AGV_URL, AgvConstant.AGV_ADAPTOR, agvTaskAssignmentParam); |
| | | if (result.getCode()==200){ |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | public void agvTaskAssignmentCallApiLogSave(BasAgvMast basAgvMast ,String tableName, String response, Boolean bool) { |
| | | ApiLog apiLog = apiLogService.selectOne(new EntityWrapper<ApiLog>() |
| | | .eq("namespace", "Agv任务下发") |