| | |
| | | } else { |
| | | staProtocol = staProtocol.clone(); |
| | | } |
| | | if (staProtocol.isAutoing() && staProtocol.isLoading() && (staProtocol.getWorkNo() == 0 || staProtocol.getStaNo() == 0)) { |
| | | if (!staProtocol.isAutoing() || !staProtocol.isLoading()) { |
| | | continue; |
| | | } |
| | | TaskWrk taskWrk = taskWrkMapper.selectCrnStaWorking(crnProtocol.getLaneNo(), staDesc.getStnNo().toString()); |
| | | if (taskWrk == null) { |
| | | log.info("堆垛机出库站到出库站:未查询到状态为13的任务信息,站点号:" + staDesc.getStnNo().toString()); |
| | | continue; |
| | | } |
| | | if (staProtocol.isAutoing() && staProtocol.isLoading() && (staProtocol.getWorkNo() == 0 || staProtocol.getStaNo() == 0 || staProtocol.getWorkNo().equals(taskWrk.getWrkNo()))) { |
| | | // 查询工作档 |
| | | TaskWrk taskWrk = taskWrkMapper.selectCrnStaWorking(crnProtocol.getLaneNo(), staDesc.getStnNo().toString()); |
| | | if (taskWrk == null) { |
| | | continue; |
| | | } |
| | | log.info("下发输送线任务:taskWrk:" + JSON.toJSONString(taskWrk)); |
| | | // R r = siteController.siteDetlUpdate(Integer.valueOf(taskWrk.getTargetPoint()), taskWrk.getWrkNo().shortValue(), (short) 0, "Y", false, false); |
| | | staProtocol.setWorkNo(taskWrk.getWrkNo()); |
| | |
| | | if (offer) { |
| | | log.info("下发输送线任务成功:taskWrk:" + JSON.toJSONString(taskWrk)); |
| | | Date now = new Date(); |
| | | taskWrk.setStatus(TaskStatusType.OVER3.id); |
| | | if (taskWrk.getTargetPoint().equals(staProtocol.getSiteId().toString())){ |
| | | taskWrk.setStatus(TaskStatusType.OVER.id); |
| | | } else { |
| | | taskWrk.setStatus(TaskStatusType.OVER3.id); |
| | | } |
| | | taskWrk.setWrkSts(14); |
| | | taskWrk.setModiTime(now); |
| | | taskWrk.setCompleteTime(now); |
| | |
| | | ConcurrentHashMap<String, TaskProtocol> allTaskProtocol = taskProtocolCache.getAllTaskProtocol(); |
| | | if (!allTaskProtocol.isEmpty()) { |
| | | for (TaskProtocol taskProtocol : allTaskProtocol.values()) { |
| | | if (taskProtocol.getTaskNo() != 0) { |
| | | if (taskProtocol.getTaskNo() != 0 && taskProtocol.getTaskNo()!=32222L) { |
| | | return taskProtocol.getTaskNo().toString(); |
| | | } |
| | | } |
| | |
| | | } |
| | | return null; |
| | | } |
| | | public TaskWrk deviceDetectionGetWrkNo(RgvSlave.RgvStn inSta) { |
| | | |
| | | DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, inSta.getDevpPlcId()); |
| | | StaProtocol staProtocol = devpThread.getStation().get(inSta.getStaNo()); |
| | | if (staProtocol == null || Cools.isEmpty(staProtocol.getWorkNo())) { |
| | | return null; |
| | | } |
| | | TaskWrk taskWrk = taskWrkService.selectByWrkNo(staProtocol.getWorkNo()); |
| | | return taskWrk; |
| | | } |
| | | public boolean deviceDetection(RgvSlave.RgvStn inSta,Integer rgvNo) { |
| | | ArrayList<Integer> arrayList = new ArrayList<Integer>() {{ |
| | | add(1009); |
| | |
| | | public synchronized void taskStart() { |
| | | for (RgvSlave rgvSlave : slaveProperties.getRgv()) { |
| | | try { |
| | | Thread.sleep(101); |
| | | if (rgvDetection(rgvSlave)) { |
| | | String taskNoNow = rgvOtherTaskWrk(rgvSlave); |
| | | List<BasDevpPosition> basDevpPositions = basDevpPositionService.selectList(new EntityWrapper<BasDevpPosition>().orderBy("PLC_POSITION", true)); |
| | |
| | | } |
| | | List<TaskWrk> taskWrkList = new ArrayList<>(); |
| | | List<Integer> staList = new ArrayList<>(); |
| | | List<String> taskNoList = taskStartRepel(); |
| | | for (RgvSlave.RgvStn inSta : rgvSlave.getRgvInSta()) { |
| | | TaskWrk taskWrk = deviceDetection(inSta); |
| | | if (taskWrk != null) { |
| | | if (taskWrk.getWrkNo().toString().equals(taskNoNow)) continue; |
| | | if (!taskNoList.contains(taskWrk.getWrkNo().toString())) continue; |
| | | taskWrkList.add(taskWrk); |
| | | staList.add(inSta.getStaNo()); |
| | | } |
| | |
| | | if (rgvOtherIDLEOther(rgvSlave)){ |
| | | if (!rgvOtherIDLE(rgvSlave,staList.get(0))){ |
| | | System.out.println("空闲就近跳过==="+rgvSlave.getId()+"==="); |
| | | RgvErrCache.updateRgvErr(rgvSlave.getId(),staList.get(0)+"空闲就近跳过"); |
| | | |
| | | sign=true; |
| | | if (itSmall){ |
| | | RgvErrCache.updateRgvErr(rgvSlave.getId(),staList.get(0)+"空闲就近跳过"); |
| | | sign=true; |
| | | } |
| | | } |
| | | } |
| | | if (sign){ |
| | |
| | | if (rgvOtherIDLEOther2(rgvSlave)){ |
| | | if (!rgvOtherIDLE2(rgvSlave,staList.get(0))){ |
| | | System.out.println("运行就近跳过==="+rgvSlave.getId()+"==="); |
| | | RgvErrCache.updateRgvErr(rgvSlave.getId(),staList.get(0)+"运行就近跳过"); |
| | | |
| | | sign=true; |
| | | if (itSmall){ |
| | | RgvErrCache.updateRgvErr(rgvSlave.getId(),staList.get(0)+"运行就近跳过"); |
| | | sign=true; |
| | | } |
| | | } |
| | | } |
| | | if (sign){ |
| | |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | public List<String> taskStartRepel() { |
| | | ArrayList<String> arrayListOld = new ArrayList<>(); |
| | | ArrayList<String> arrayListNew = new ArrayList<>(); |
| | | ArrayList<Integer> arrayListAllP = new ArrayList<>(); |
| | | ArrayList<Long[]> arrayListAll = new ArrayList<>(); |
| | | for (RgvSlave rgvSlave : slaveProperties.getRgv()) { |
| | | try{ |
| | | boolean itSmall = new TrackRangeUtils().IsItSmall(rgvSlave); |
| | | String taskNoNow = rgvOtherTaskWrk(rgvSlave); |
| | | if (taskNoNow.equals("无")){ |
| | | continue; |
| | | } |
| | | if (!arrayListOld.contains(taskNoNow)){ |
| | | arrayListOld.add(taskNoNow); |
| | | } |
| | | |
| | | TaskWrk taskWrk = taskWrkMapper.selectByTaskNo(taskNoNow); |
| | | if (taskWrk != null) { |
| | | if (!arrayListAllP.contains(taskWrk.getWrkNo())) { |
| | | |
| | | RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId()); |
| | | TaskProtocolCache taskProtocolCache = rgvThread.getTaskProtocolCache(); |
| | | |
| | | arrayListAllP.add(taskWrk.getWrkNo()); |
| | | long startP = 0; |
| | | if (!itSmall){ |
| | | startP = System.currentTimeMillis(); |
| | | } |
| | | |
| | | long endP = 0; |
| | | long endP1 = 0; |
| | | long endP2 = 0; |
| | | ConcurrentHashMap<String, TaskProtocol> allTaskProtocol = taskProtocolCache.getAllTaskProtocol(); |
| | | for (TaskProtocol taskProtocol : allTaskProtocol.values()){ |
| | | if (taskProtocol.getTaskStatus() == 2){//取 |
| | | endP1 = taskProtocol.getTargetPosition(); |
| | | } else if (taskProtocol.getTaskStatus() == 3){//放 |
| | | endP2 = taskProtocol.getTargetPosition(); |
| | | } |
| | | } |
| | | if (endP1 > endP2){ |
| | | if (itSmall){ |
| | | endP = endP1; |
| | | } else { |
| | | endP = endP2; |
| | | } |
| | | } |
| | | if (endP == 0){ |
| | | if (itSmall){ |
| | | endP = System.currentTimeMillis(); |
| | | } |
| | | } |
| | | Long[] longList = {taskWrk.getWrkNo().longValue(),startP,endP}; |
| | | arrayListAll.add(longList); |
| | | } |
| | | } else { |
| | | RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId()); |
| | | TaskProtocolCache taskProtocolCache = rgvThread.getTaskProtocolCache(); |
| | | |
| | | try { |
| | | long startP = 0; |
| | | long endP = 0; |
| | | ConcurrentHashMap<String, TaskProtocol> allTaskProtocol = taskProtocolCache.getAllTaskProtocol(); |
| | | for (TaskProtocol taskProtocol : allTaskProtocol.values()){ |
| | | if (taskProtocol.getTaskStatus() == 2){//取 |
| | | startP = taskProtocol.getTargetPosition(); |
| | | } else if (taskProtocol.getTaskStatus() == 3){//放 |
| | | endP = taskProtocol.getTargetPosition(); |
| | | } |
| | | } |
| | | if (startP == 0 ){ |
| | | if (!itSmall){ |
| | | startP = System.currentTimeMillis(); |
| | | } |
| | | } |
| | | if (endP == 0){ |
| | | if (itSmall){ |
| | | endP = System.currentTimeMillis(); |
| | | } |
| | | } |
| | | // taskNoNow |
| | | long parseLong = Long.parseLong(taskNoNow); |
| | | Long[] longList = {parseLong,startP,endP}; |
| | | arrayListAll.add(longList); |
| | | |
| | | } catch (Exception e) { |
| | | log.error("任务过滤查询小车执行任务异常:"+e.getMessage()); |
| | | return new ArrayList<>(); |
| | | } |
| | | } |
| | | |
| | | } catch (Exception e) { |
| | | } |
| | | } |
| | | for (RgvSlave rgvSlave : slaveProperties.getRgv()) { |
| | | if (rgvDetection(rgvSlave)) { |
| | | for (RgvSlave.RgvStn rgvStn : rgvSlave.getRgvInSta()) { |
| | | TaskWrk taskWrk = deviceDetectionGetWrkNo(rgvStn); |
| | | if (taskWrk != null) { |
| | | if (!arrayListAllP.contains(taskWrk.getWrkNo())) { |
| | | arrayListAllP.add(taskWrk.getWrkNo()); |
| | | BasDevpPosition basDevpPositionSta = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", rgvStn.getStaNo())); |
| | | BasDevpPosition basDevpPositionEnd = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", BarcodeUtils.getOutStaNo(taskWrk.getOriginTargetPoint()))); |
| | | Long[] longList = {taskWrk.getWrkNo().longValue(),basDevpPositionSta.getPlcPosition(),basDevpPositionEnd.getPlcPosition()}; |
| | | arrayListAll.add(longList); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | List<Long[]> crossingPathsW = TrackUtils.findCrossingPathsW(arrayListAll); |
| | | List<Long> wrkNoList = new ArrayList<>(); |
| | | List<Long> signWrk = new ArrayList<>(); |
| | | for (Long[] longList : crossingPathsW) { |
| | | if (arrayListOld.contains(longList[0].toString()) || arrayListOld.contains(longList[1].toString())){ |
| | | signWrk.add(longList[0]); |
| | | signWrk.add(longList[1]); |
| | | continue; |
| | | } |
| | | if (!wrkNoList.contains(longList[0]) && !signWrk.contains(longList[0])) { |
| | | if (!wrkNoList.contains(longList[1]) && !signWrk.contains(longList[1])) { |
| | | wrkNoList.add(longList[0]); |
| | | } |
| | | } |
| | | signWrk.add(longList[0]); |
| | | signWrk.add(longList[1]); |
| | | } |
| | | for (Integer str : arrayListAllP) { |
| | | if (!signWrk.contains(str.longValue())) { |
| | | arrayListNew.add(str.toString()); |
| | | } |
| | | } |
| | | for (Long wrk : wrkNoList) { |
| | | arrayListNew.add(wrk.toString()); |
| | | } |
| | | |
| | | return arrayListNew; |
| | | } |
| | | |
| | | //获取起点与终点对象 |
| | |
| | | // 如果最近一次是入库模式 |
| | | if (crnProtocol.getLastIo().equals("I")) { |
| | | if (basCrnp.getInEnable().equals("Y")) { |
| | | this.crnStnToLocDemo(crnSlave, crnProtocol); // 入库 |
| | | crnProtocol.setLastIo("O"); |
| | | boolean crnStnToLocDemo = this.crnStnToLocDemo(crnSlave, crnProtocol);// 入库 |
| | | if (crnStnToLocDemo){ |
| | | crnProtocol.setSignIntOut(true); |
| | | crnProtocol.setLastIo("O"); |
| | | } else if (!crnProtocol.isSignIntOut()){ |
| | | crnProtocol.setLastIo("O"); |
| | | } |
| | | } else if (basCrnp.getOutEnable().equals("Y")) { |
| | | this.locToCrnStnDemo(crnSlave, crnProtocol); // 出库 |
| | | crnProtocol.setLastIo("I"); |
| | | if (!crnProtocol.isSignIntOut()){ |
| | | crnProtocol.setLastIo("I"); |
| | | } else { |
| | | boolean locToCrnStnDemo = this.locToCrnStnDemo(crnSlave, crnProtocol);// 出库 |
| | | if (locToCrnStnDemo && crnProtocol.isSignIntOut()){ |
| | | crnProtocol.setLastIo("I"); |
| | | } else if (locToCrnStnDemo){ |
| | | crnProtocol.setLastIo("I"); |
| | | crnProtocol.setSignIntOut(true); |
| | | } else if (!crnProtocol.isSignIntOut()){ |
| | | crnProtocol.setLastIo("I"); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | // 如果最近一次是出库模式 |
| | | else if (crnProtocol.getLastIo().equals("O")) { |
| | | if (basCrnp.getOutEnable().equals("Y")) { |
| | | this.locToCrnStnDemo(crnSlave, crnProtocol); // 出库 |
| | | crnProtocol.setLastIo("I"); |
| | | if (!crnProtocol.isSignIntOut()) { |
| | | crnProtocol.setLastIo("I"); |
| | | } else { |
| | | boolean locToCrnStnDemo = this.locToCrnStnDemo(crnSlave, crnProtocol);// 出库 |
| | | if (locToCrnStnDemo && crnProtocol.isSignIntOut()){ |
| | | crnProtocol.setLastIo("I"); |
| | | } else if (locToCrnStnDemo){ |
| | | crnProtocol.setLastIo("I"); |
| | | crnProtocol.setSignIntOut(true); |
| | | } else if (!crnProtocol.isSignIntOut()){ |
| | | crnProtocol.setLastIo("I"); |
| | | } |
| | | } |
| | | } else if (basCrnp.getInEnable().equals("Y")) { |
| | | this.crnStnToLocDemo(crnSlave, crnProtocol); // 入库 |
| | | crnProtocol.setLastIo("O"); |
| | | boolean crnStnToLocDemo = this.crnStnToLocDemo(crnSlave, crnProtocol);// 入库 |
| | | if (crnStnToLocDemo){ |
| | | crnProtocol.setSignIntOut(true); |
| | | crnProtocol.setLastIo("O"); |
| | | } else if (!crnProtocol.isSignIntOut()){ |
| | | crnProtocol.setLastIo("O"); |
| | | } |
| | | } |
| | | } |
| | | } else { |
| | |
| | | /** |
| | | * 入库 ===>> 堆垛机站到库位 |
| | | */ |
| | | public void crnStnToLocDemo(CrnSlave slave, CrnProtocol crnProtocol) throws IOException { |
| | | public boolean crnStnToLocDemo(CrnSlave slave, CrnProtocol crnProtocol) throws IOException { |
| | | boolean result = false; |
| | | for (CrnSlave.CrnStn crnStn : slave.getCrnInStn()) { |
| | | List<StaDesc> staDescs = staDescMapper.selectList(new EntityWrapper<StaDesc>().eq("CRN_NO", crnProtocol.getLaneNo()).eq("CRN_STN", crnStn.getStaNo())); |
| | | |
| | |
| | | // 获取工作状态为2(设备上走)的入库工作档 |
| | | TaskWrk taskWrk = null; |
| | | for (String locNo : crnProtocol.getLocMastDemoList()) { |
| | | TaskWrk taskWrk1 = taskWrkService.selectByTaskNo(locNo); |
| | | TaskWrk taskWrk1 = taskWrkService.selectByTaskNo(locNo+"r"); |
| | | if (Cools.isEmpty(taskWrk1)){ |
| | | continue; |
| | | } |
| | | if (taskWrk1.getIoType() == 3 && taskWrk1.getWrkSts()<3){ |
| | | if (taskWrk1.getIoType() == 1 && taskWrk1.getWrkSts()<3){ |
| | | taskWrk = taskWrk1; |
| | | break; |
| | | } |
| | |
| | | |
| | | throw new CoolException("堆垛机命令生成失败"); |
| | | } else { |
| | | result = true; |
| | | try { |
| | | devpThread.setErrorDev(staProtocol.getSiteId(), "-"); |
| | | CrnErrCache.updateCrnErr(crnProtocol.getCrnNo(), "-"); |
| | |
| | | } |
| | | } |
| | | } |
| | | return result; |
| | | } |
| | | |
| | | /** |
| | | * 出库 ===>> 库位到堆垛机站 |
| | | * 2022-06-09 TQS修改,查询工作档LIST,遍历下发,防止第一个任务堵塞出库 |
| | | */ |
| | | public void locToCrnStnDemo(CrnSlave slave, CrnProtocol crnProtocol) { |
| | | public boolean locToCrnStnDemo(CrnSlave slave, CrnProtocol crnProtocol) { |
| | | boolean result = false; |
| | | List<TaskWrk> taskWrksInitial = taskWrkMapper.selectPakOut(crnProtocol.getLaneNo(), null); |
| | | if (taskWrksInitial.size() == 0) { |
| | | return; |
| | | return result; |
| | | } |
| | | for (CrnSlave.CrnStn crnStn : slave.getCrnOutStn()) { |
| | | List<StaDesc> staDescs = staDescMapper.selectList(new EntityWrapper<StaDesc>().eq("CRN_NO", crnProtocol.getLaneNo()).eq("CRN_STN", crnStn.getStaNo())); |
| | |
| | | } |
| | | |
| | | // 判断堆垛机出库站状态 |
| | | if (staProtocol.isAutoing() && staDetl.getCanouting() != null && staDetl.getCanouting().equals("Y")) { |
| | | if (staProtocol.isAutoing() && !staProtocol.isLoading() && staDetl.getCanouting() != null && staDetl.getCanouting().equals("Y")) { |
| | | // 堆垛机控制过滤 |
| | | if (!crnProtocol.getStatusType().equals(CrnStatusType.IDLE)) { |
| | | devpThread.setErrorDev(staProtocol.getSiteId(), "堆垛机非空闲"); |
| | |
| | | CrnErrCache.updateCrnErr(crnProtocol.getCrnNo(), "运行命令下发失败"); |
| | | throw new CoolException("堆垛机命令生成失败"); |
| | | } else { |
| | | result = true; |
| | | try { |
| | | // 修改工作档状态 11.生成出库ID => 12.吊车出库中 |
| | | Date now = new Date(); |
| | |
| | | if (taskWrkMapper.updateById(taskWrk) == 0) { |
| | | log.error("修改工作档状态 11.生成出库ID => 12.吊车出库中 失败!!,工作号={}", taskWrk.getWrkNo()); |
| | | } |
| | | |
| | | |
| | | } catch (Exception e) { |
| | | log.error("修改工作档状态 11.生成出库ID => 12.吊车出库中 失败!!,工作号={}", taskWrk.getWrkNo()); |
| | | log.error("修改工作档状态 11.生成出库ID => 12.吊车出库中 失败!!,异常:" + e); |
| | | } |
| | | try { |
| | | HashMap<String, Object> headParam = new HashMap<>(); |
| | | headParam.put("taskNo",taskWrk.getTaskNo()); |
| | | headParam.put("taskStatus",taskWrk.getStatusWms()); |
| | | headParam.put("ioType",taskWrk.getIoTypeWms()); |
| | | headParam.put("barCode",taskWrk.getBarcode()); |
| | | headParam.put("reportTime", LocalDateTime.now()); |
| | | headParam.put("weight",taskWrk.getScWeight().doubleValue()); |
| | | |
| | | String response; |
| | | response = new HttpHandler.Builder() |
| | | // .setHeaders(headParam) |
| | | .setUri(wmsUrl) |
| | | .setPath(taskStatusFeedbackPath) |
| | | .setJson(JSON.toJSONString(headParam)) |
| | | .build() |
| | | .doPost(); |
| | | JSONObject jsonObject = JSON.parseObject(response); |
| | | apiLogService.save("wcs派发出库任务上报wms" |
| | | , wmsUrl + taskStatusFeedbackPath |
| | | , null |
| | | , "127.0.0.1" |
| | | , JSON.toJSONString(headParam) |
| | | , response |
| | | , true |
| | | ); |
| | | } catch (Exception e) { |
| | | log.error("wcs派发出库任务上报wms失败", JSON.toJSONString(taskWrk)); |
| | | // throw new CoolException("wcs派发入库任务上报wms失败"); |
| | | } |
| | | } |
| | | } else { |
| | |
| | | } |
| | | } |
| | | } |
| | | return result; |
| | | } |
| | | |
| | | /** |
| | |
| | | if (Cools.isEmpty(basCrnp.getHpMk()) || !basCrnp.getHpMk().equals("Y")){ |
| | | continue; |
| | | } |
| | | for (String locNo : crnProtocol.getLocMastDemoList()){ |
| | | LocMast locMast = locMastService.selectByLocNo(locNo); |
| | | if (locMast.getLocSts().equals("F")){ |
| | | CarryParam carryParam = new CarryParam(); |
| | | carryParam.setTaskNo(locNo); |
| | | carryParam.setBarcode(locNo); |
| | | carryParam.setIoType(1);//任务类型=》1:出库、2:移库、3:入库 ====转换为====> 1:入库,2:出库,3:移库 |
| | | carryParam.setTaskPriority(1); |
| | | carryParam.setTargetPoint("1012"); |
| | | carryParam.setStartPoint(BarcodeUtils.formatCode(locNo)); |
| | | carryParam.setMeno("Demo"); |
| | | taskWrkController.addTaskPoint(carryParam); |
| | | Thread.sleep(50); |
| | | } else if (locMast.getLocSts().equals("O")){ |
| | | CarryParam carryParam = new CarryParam(); |
| | | carryParam.setTaskNo(locNo); |
| | | carryParam.setBarcode(locNo); |
| | | carryParam.setIoType(3);//任务类型=》1:出库、2:移库、3:入库 ====转换为====> 1:入库,2:出库,3:移库 |
| | | carryParam.setTaskPriority(1); |
| | | carryParam.setStartPoint("1012"); |
| | | carryParam.setTargetPoint(BarcodeUtils.formatCode(locNo)); |
| | | carryParam.setMeno("Demo"); |
| | | taskWrkController.addTaskPoint(carryParam); |
| | | Thread.sleep(50); |
| | | boolean signIn = false; |
| | | for (String[] locS : crnProtocol.getLocMastDemoListSign()){ |
| | | if (locS[3].equals(String.valueOf(crnProtocol.getLocMastDemoListSign().size()))){ |
| | | String locNo1 = locS[0]; |
| | | String locNo2 = locS[2]; |
| | | ArrayList<String> locNoList = new ArrayList<>(); |
| | | locNoList.add(locNo1); |
| | | locNoList.add(locNo2); |
| | | for (String locNo : locNoList) { |
| | | TaskWrk taskWrk1 = taskWrkService.selectByTaskNo(locNo+"r"); |
| | | if (Cools.isEmpty(taskWrk1)){ |
| | | continue; |
| | | } |
| | | signIn = true; |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | if (signIn){ |
| | | continue; |
| | | } |
| | | for (String[] locS : crnProtocol.getLocMastDemoListSign()){ |
| | | if (locS[3].equals("1")){ |
| | | String locNo1 = locS[0]; |
| | | String locNo2 = locS[2]; |
| | | ArrayList<String> locNoList = new ArrayList<>(); |
| | | locNoList.add(locNo1); |
| | | locNoList.add(locNo2); |
| | | for (String locNo : locNoList) { |
| | | LocMast locMast = locMastService.selectByLocNo(locNo); |
| | | if (locMast.getLocSts().equals("F")){ |
| | | CarryParam carryParam = new CarryParam(); |
| | | carryParam.setTaskNo(locNo); |
| | | carryParam.setBarcode(locNo); |
| | | carryParam.setIoType(1);//任务类型=》1:出库、2:移库、3:入库 ====转换为====> 1:入库,2:出库,3:移库 |
| | | carryParam.setTaskPriority(1); |
| | | carryParam.setTargetPoint("1012"); |
| | | carryParam.setStartPoint(BarcodeUtils.formatCode(locNo)); |
| | | carryParam.setMeno("Demo"); |
| | | taskWrkController.addTaskPoint(carryParam); |
| | | } else if (locMast.getLocSts().equals("O")){ |
| | | CarryParam carryParam = new CarryParam(); |
| | | carryParam.setTaskNo(locNo+"r"); |
| | | carryParam.setBarcode(locNo); |
| | | carryParam.setIoType(3);//任务类型=》1:出库、2:移库、3:入库 ====转换为====> 1:入库,2:出库,3:移库 |
| | | carryParam.setTaskPriority(1); |
| | | carryParam.setStartPoint("1012"); |
| | | carryParam.setTargetPoint(BarcodeUtils.formatCode(locNo)); |
| | | carryParam.setMeno("Demo"); |
| | | taskWrkController.addTaskPoint(carryParam); |
| | | LocFCSUtils.updateLocSInPlace(crnProtocol.getLocMastDemoListSign()); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |