lty
2025-05-19 9d210e16b95333022143153916b05ca10274024f
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -150,7 +150,7 @@
                    errMsg = "右超限";
                    back = true;
                }
                if (!back && staProtocol.isWeightErr()) {
                if (!back && staProtocol.getWeight() > 1000) {
                    errMsg = "超重";
                    back = true;
                }
@@ -158,6 +158,11 @@
                    errMsg = "扫码失败";
                    back = true;
                }
//                if (!back && staProtocol.getWeight() == 0.0) {
//                    errMsg = "重量获取失败";
//                    back = true;
//                }
                // 退回
                if (back) {
@@ -240,10 +245,12 @@
                        LocTypeDto locTypeDto = new LocTypeDto(staProtocol);
                        SearchLocParam param = new SearchLocParam();
                        locTypeDto.setLocType1((short) 1);
                        param.setBarcode(barcode);
                        param.setIoType(1);
                        param.setSourceStaNo(inSta.getStaNo());
                        param.setLocType1(locTypeDto.getLocType1());
                        param.setWeight(staProtocol.getWeight());
                        String response = new HttpHandler.Builder()
                                .setTimeout(30,TimeUnit.SECONDS)
                                .setUri(wmsUrl)
@@ -445,6 +452,9 @@
                    errMsg = "扫码失败";
                    back = true;
                }
                if(staProtocol.getSiteId() > 400){
                    back = false;
                }
                // 退回
                if (back) {
@@ -472,23 +482,26 @@
                    }
                    continue;
                }
                if (!Cools.isEmpty(barcode)) {
                    News.infoNoLog("" + mark + " - 1" + " - {}号条码扫描器检测条码信息:{}", pickSta.getBarcode(), barcode);
                    if ("NG".endsWith(barcode) || "NoRead".equals(barcode)) {
                if(staProtocol.getSiteId() < 400){
                    if (!Cools.isEmpty(barcode)) {
                        News.infoNoLog("" + mark + " - 1" + " - {}号条码扫描器检测条码信息:{}", pickSta.getBarcode(), barcode);
                        if ("NG".endsWith(barcode) || "NoRead".equals(barcode)) {
                            continue;
                        }
                    } else {
                        continue;
                    }
                } else {
                    continue;
                }
                if (!Cools.isEmpty(barcode)) {
                    if (!Cools.isEmpty(barcode)) {
//                    News.info(""+mark+" - 1"+" - {}号条码扫描器检测条码信息:{}", pickSta.getBarcode(), barcode);
                    if ("NG".endsWith(barcode) || "NoRead".equals(barcode)) {
                        if ("NG".endsWith(barcode) || "NoRead".equals(barcode)) {
                            continue;
                        }
                    } else {
                        continue;
                    }
                } else {
                    continue;
                }
@@ -504,6 +517,9 @@
                if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable() && staProtocol.isPakMk()) {
                    News.warnNoLog("" + mark + " - 0" + " - 开始执行");
                    WrkMast wrkMast = wrkMastMapper.selectPickStep(barcode);
                    if(staProtocol.getSiteId() > 400){
                        wrkMast = wrkMastMapper.selectPickStep3(staProtocol.getWorkNo());
                    }
//                    WrkMast wrkMast = wrkMastMapper.selectPakInStep3(staProtocol.getWorkNo().intValue());
                    if (wrkMast == null) {
                        // 无拣料数据
@@ -588,7 +604,9 @@
                    // 更新站点信息 且 下发plc命令
                    staProtocol.setWorkNo(wrkMast.getWrkNo());
                    staProtocol.setStaNo(Short.valueOf(wrkMast.getStaNo().toString()));
                    if(staProtocol.getSiteId() < 400){
                        staProtocol.setStaNo(Short.valueOf(wrkMast.getStaNo().toString()));
                    }
                    devpThread.setPakMk(staProtocol.getSiteId(), false);
                    boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
                    log.error("输送线下发5:" + wrkMast.getWrkNo() + "," + wrkMast.getStaNo());
@@ -834,7 +852,7 @@
                        }
                    } else {
                        News.errorNoLog("" + mark + " - 6" + " - 堆垛机信息不符合入库条件!!!"
                         News.errorNoLog("" + mark + " - 6" + " - 堆垛机信息不符合入库条件!!!"
                                + " 堆垛机状态:" + crnProtocol.modeType + "==自动AUTO:" + CrnModeType.AUTO
                                + "、堆垛机任务号:" + crnProtocol.getTaskNo() + "==工作档任务号:" + wrkMast.getWrkNo().shortValue()
                                + "、状态枚举:" + crnProtocol.statusType + "==WAITING:90 //任务完成等待WCS确认):" + CrnStatusType.WAITING
@@ -920,7 +938,7 @@
            }
            // 库位移转
            //mark - 3 - ....
            this.locToLoc(crn, crnProtocol, mark);
//            this.locToLoc(crn, crnProtocol, mark);
//            this.crnRebackHp(crnProtocol, crnThread);
        }
@@ -1005,6 +1023,9 @@
                News.error("" + mark + " - 1" + " - 2" + " - 入库 ===>> 堆垛机站点在数据库不存在, 站点编号={}", crnStn.getStaNo());
                continue;
            }
//            if(staProtocol.getWorkNo() == 9998){
//                continue;
//            }
            if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.getWorkNo() > 0 && staProtocol.isInEnable()
                    && staDetl.getCanining() != null && staDetl.getCanining().equals("Y")) {
                flag = true;
@@ -1800,6 +1821,12 @@
                    case 10:
                        ledCommand.setTitle("空板入库");
                        break;
                    case 53:
                        ledCommand.setTitle("拣料再入库");
                        break;
                    case 57:
                        ledCommand.setTitle("盘点再入库");
                        break;
                    case 101:
                        ledCommand.setTitle("全板出库");
                        break;