自动化立体仓库 - WCS系统
#
whycq
2023-05-12 bfc97f036688f34e7c1451d68e3f6fc242f99929
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -102,29 +102,17 @@
            for (DevpSlave.Sta inSta : devp.getInSta()) {
                // 获取条码扫描仪信息
                BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, inSta.getBarcode());
                if (barcodeThread == null) {
                    continue;
                }
                String barcode = barcodeThread.getBarcode();
                //101站有3个扫码器,当0扫码器没有数据时,获取9、10两个扫码器数据
                if((inSta.getStaNo().equals(101) || inSta.getStaNo().equals(104)) && ( "NoRead".equals(barcode) || Cools.isEmpty(barcode) )){
                    BarcodeThread barcodeThread1 = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, inSta.getBarcode1());
                    if (barcodeThread1 != null) {
                        barcode = barcodeThread1.getBarcode();
                    }
                    if("NoRead".equals(barcode) || Cools.isEmpty(barcode)) {
                        BarcodeThread barcodeThread2 = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, inSta.getBarcode2());
                        if (barcodeThread2 != null) {
                            barcode = barcodeThread2.getBarcode();
                        }
                    }
                }
                ////判断101和104是否是拣料、并板、盘点再入库
                //WrkMast wrkMast1=wrkMastMapper.selectpj(inSta.getStaNo(),barcode);
                //if((inSta.getStaNo().equals(101) || inSta.getStaNo().equals(104)) &&!Cools.isEmpty(barcode)&&!Cools.isEmpty(wrkMast1)){
                //    log.error("101或104拣料、并板、盘点再入库", wrkMast1.getWrkNo());
                //    continue;
                //}
                if (!Cools.isEmpty(barcode)) {
                    log.info("{}号条码扫描器检测条码信息:{}", inSta.getBarcode(), barcode);
@@ -155,24 +143,6 @@
                    continue;
                }
                if (inSta.getStaNo() == 104 && devpThread.ioModeOf1F2 == IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 111 && devpThread.ioModeOf1F3 == IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 114 && devpThread.ioModeOf1F4 == IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 201 && devpThread.ioModeOf2F1 == IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 204 && devpThread.ioModeOf2F2 == IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 301 && devpThread.ioModeOf3F1 == IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 304 && devpThread.ioModeOf3F2 == IoModeType.PAKOUT_MODE) {
                    continue;
                }
@@ -224,7 +194,7 @@
                        param.setFull(staProtocol.isFull());
                        String response = new HttpHandler.Builder()
                                .setUri(wmsUrl)
                                .setPath("/rpc/pakin/loc/v1")
                                .setPath("/rpc/ ")
                                .setJson(JSON.toJSONString(param))
                                .build()
                                .doPost();
@@ -376,24 +346,6 @@
                if (inSta.getStaNo() == 101 && devpThread.ioModeOf1F2 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 114 && devpThread.ioModeOf1F3 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 111 && devpThread.ioModeOf1F4 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 204 && devpThread.ioModeOf2F1 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 201 && devpThread.ioModeOf2F2 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 301 && devpThread.ioModeOf3F1 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 304 && devpThread.ioModeOf3F2 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                // 判断是否满足入库条件
                if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable()
@@ -447,27 +399,9 @@
                String barcode = barcodeThread.getBarcode();
                //101站有3个扫码器,当0扫码器没有数据时,获取9、10两个扫码器数据
                if((pickSta.getStaNo().equals(101) || pickSta.getStaNo().equals(104)) && ( "NoRead".equals(barcode) || Cools.isEmpty(barcode) )){
                    BarcodeThread barcodeThread1 = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, pickSta.getBarcode1());
                    if (barcodeThread1 != null) {
                        barcode = barcodeThread1.getBarcode();
                    }
                    if("NoRead".equals(barcode) || Cools.isEmpty(barcode)) {
                        BarcodeThread barcodeThread2 = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, pickSta.getBarcode2());
                        if (barcodeThread2 != null) {
                            barcode = barcodeThread2.getBarcode();
                        }
                    }
                }
                if (!Cools.isEmpty(barcode)) {
                    log.info("{}号条码扫描器检测条码信息:{}", pickSta.getBarcode(), barcode);
//                    if ("NG".endsWith(barcode) || "NoRead".equals(barcode)) {
//                        continue;
//                    }
                } else {
                    continue;
                }
@@ -540,24 +474,6 @@
                                break;
                            case 103:
                                sourceStaNo = 104;
                                break;
                            case 110:
                                sourceStaNo = 111;
                                break;
                            case 113:
                                sourceStaNo = 114;
                                break;
                            case 200:
                                sourceStaNo = 201;
                                break;
                            case 203:
                                sourceStaNo = 204;
                                break;
                            case 300:
                                sourceStaNo = 301;
                                break;
                            case 303:
                                sourceStaNo = 304;
                                break;
                        }
@@ -951,24 +867,6 @@
                    continue;
                }
                if (wrkMast.getStaNo() == 103 && devpThread.ioModeOf1F2 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (wrkMast.getStaNo() == 110 && devpThread.ioModeOf1F3 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (wrkMast.getStaNo() == 113 && devpThread.ioModeOf1F4 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (wrkMast.getStaNo() == 200 && devpThread.ioModeOf2F1 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (wrkMast.getStaNo() == 203 && devpThread.ioModeOf2F2 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (wrkMast.getStaNo() == 300 && devpThread.ioModeOf3F1 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (wrkMast.getStaNo() == 303 && devpThread.ioModeOf3F2 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
@@ -1440,7 +1338,7 @@
                // 站点条件判断
                if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable()
                        && staProtocol.isEmptyMk() && (staProtocol.getWorkNo() > 9990
                        && staProtocol.isEmptyMk() && (staProtocol.getWorkNo() >= 9990
                        && staProtocol.getWorkNo() <= 9999) && staProtocol.isPakMk()) {
                    try {
@@ -2143,24 +2041,6 @@
                        case 104:
                            staNo = 106;
                            break;
                        case 111:
                            staNo = 112;
                            break;
                        case 114:
                            staNo = 116;
                            break;
                        case 201:
                            staNo = 202;
                            break;
                        case 204:
                            staNo = 205;
                            break;
                        case 301:
                            staNo = 302;
                            break;
                        case 304:
                            staNo = 305;
                            break;
                    }
                    WrkMast pakout = wrkMastMapper.selectWorkingPakout(staNo);
                    switch (inSta.getStaNo()) {
@@ -2198,114 +2078,6 @@
                            } else {
                                // 入库模式
                                devpThread.ioModeOf1F2 = IoModeType.PAKIN_MODE;
                            }
                            break;
                        case 111: // 1F3
                            if (pakout != null) {
                                if (devpThread.ioModeOf1F3 != IoModeType.PAKOUT_MODE) {
                                    // 出库切换中
                                    devpThread.ioModeOf1F3 = IoModeType.PAKOUT_BOOTING;
                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
                                            && !devpThread.getStation().get(inSta.getStaNo() - 1).isLoading()
                                            && devpThread.getStation().get(inSta.getStaNo() - 1).getWorkNo() == 0) {
                                        // 出库模式
                                        devpThread.ioModeOf1F3 = IoModeType.PAKOUT_MODE;
                                    }
                                }
                            } else {
                                // 入库模式
                                devpThread.ioModeOf1F3 = IoModeType.PAKIN_MODE;
                            }
                            break;
                        case 114: // 1F4
                            if (pakout != null) {
                                if (devpThread.ioModeOf1F4 != IoModeType.PAKOUT_MODE) {
                                    // 出库切换中
                                    devpThread.ioModeOf1F4 = IoModeType.PAKOUT_BOOTING;
                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
                                            && !devpThread.getStation().get(inSta.getStaNo() - 1).isLoading()
                                            && devpThread.getStation().get(inSta.getStaNo() - 1).getWorkNo() == 0) {
                                        // 出库模式
                                        devpThread.ioModeOf1F4 = IoModeType.PAKOUT_MODE;
                                    }
                                }
                            } else {
                                // 入库模式
                                devpThread.ioModeOf1F4 = IoModeType.PAKIN_MODE;
                            }
                            break;
                        case 201: // 2F1
                            if (pakout != null) {
                                if (devpThread.ioModeOf2F1 != IoModeType.PAKOUT_MODE) {
                                    // 出库切换中
                                    devpThread.ioModeOf2F1 = IoModeType.PAKOUT_BOOTING;
                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
                                            && !devpThread.getStation().get(inSta.getStaNo() - 1).isLoading()
                                            && devpThread.getStation().get(inSta.getStaNo() - 1).getWorkNo() == 0) {
                                        // 出库模式
                                        devpThread.ioModeOf2F1 = IoModeType.PAKOUT_MODE;
                                    }
                                }
                            } else {
                                // 入库模式
                                devpThread.ioModeOf2F1 = IoModeType.PAKIN_MODE;
                            }
                            break;
                        case 204: // 2F2
                            if (pakout != null) {
                                if (devpThread.ioModeOf2F2 != IoModeType.PAKOUT_MODE) {
                                    // 出库切换中
                                    devpThread.ioModeOf2F2 = IoModeType.PAKOUT_BOOTING;
                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
                                            && !devpThread.getStation().get(inSta.getStaNo() - 1).isLoading()
                                            && devpThread.getStation().get(inSta.getStaNo() - 1).getWorkNo() == 0) {
                                        // 出库模式
                                        devpThread.ioModeOf2F2 = IoModeType.PAKOUT_MODE;
                                    }
                                }
                            } else {
                                // 入库模式
                                devpThread.ioModeOf2F2 = IoModeType.PAKIN_MODE;
                            }
                            break;
                        case 301: // 3F1
                            if (pakout != null) {
                                if (devpThread.ioModeOf3F1 != IoModeType.PAKOUT_MODE) {
                                    // 出库切换中
                                    devpThread.ioModeOf3F1 = IoModeType.PAKOUT_BOOTING;
                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
                                            && !devpThread.getStation().get(inSta.getStaNo() - 1).isLoading()
                                            && devpThread.getStation().get(inSta.getStaNo() - 1).getWorkNo() == 0) {
                                        // 出库模式
                                        devpThread.ioModeOf3F1 = IoModeType.PAKOUT_MODE;
                                    }
                                }
                            } else {
                                // 入库模式
                                devpThread.ioModeOf3F1 = IoModeType.PAKIN_MODE;
                            }
                            break;
                        case 304: // 3F2
                            if (pakout != null) {
                                if (devpThread.ioModeOf3F2 != IoModeType.PAKOUT_MODE) {
                                    // 出库切换中
                                    devpThread.ioModeOf3F2 = IoModeType.PAKOUT_BOOTING;
                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
                                            && !devpThread.getStation().get(inSta.getStaNo() - 1).isLoading()
                                            && devpThread.getStation().get(inSta.getStaNo() - 1).getWorkNo() == 0) {
                                        // 出库模式
                                        devpThread.ioModeOf3F2 = IoModeType.PAKOUT_MODE;
                                    }
                                }
                            } else {
                                // 入库模式
                                devpThread.ioModeOf3F2 = IoModeType.PAKIN_MODE;
                            }
                            break;
                    }