999
zhangc
2025-04-18 8d862cadd05ae0404ed995f3ad1fdbd98371105c
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -831,6 +831,8 @@
            short staNo = 1012;
            if (wrkMast.getSourceStaNo() == 1022) {
                staNo = 1023;
            } else if (wrkMast.getSourceStaNo() == 1031 || wrkMast.getSourceStaNo() == 1032) {
                staNo = 1032;
            }
            staProtocol = staProtocol.clone();
@@ -936,6 +938,8 @@
            String locNo = "0200305";
            if (wrkMast.getSourceStaNo() == 1012) {
                locNo = "0200301";
            } else if (wrkMast.getSourceStaNo() == 1032 || wrkMast.getSourceStaNo() == 1031) {
                locNo = "0200308";
            }
            boolean dispatchShuttle = shuttleDispatchUtils.searchDispatchShuttleS(wrkMast.getWrkNo(), locNo, wrkMast.getLocNo(), "TRANSPORT_LIFT");
            if (!dispatchShuttle) {
@@ -943,9 +947,13 @@
                return false;
            }
            int lev = 105;
            if (wrkMast.getSourceStaNo() == 1012) {
                lev = 101;
            int lev = 101;
            if (wrkMast.getSourceStaNo() == 1021) {
                //TODO
                // lev = 105;
                lev = 1021;
            } else if (wrkMast.getSourceStaNo() == 1032 || wrkMast.getSourceStaNo() == 1031) {
                lev = 1031;
            }
            //获取提升机命令
            List<LiftCommand> liftCommands = liftThread.getPalletInCommand(wrkMast.getWrkNo(), sourceStaNo, lev);
@@ -1078,6 +1086,8 @@
            String locNo = "0200305";
            if (wrkMast.getStaNo() == 1011) {
                locNo = "0200301";
            } else if (wrkMast.getStaNo() == 1032) {
                locNo = "0200308";
            }
            boolean dispatchShuttle = shuttleDispatchUtils.searchDispatchShuttleS(wrkMast.getWrkNo(), wrkMast.getSourceLocNo(), locNo, "TRANSPORT_LIFT");
            if (!dispatchShuttle) {
@@ -2111,31 +2121,21 @@
    public synchronized void ioConvert() {
        try {
            // 根据输送线plc遍历
            FyDevpThread devpThread = (FyDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
            for (DevpSlave.Sta inSta : devp.getInSta()) {
                WrkMast pakout = wrkMastMapper.selectWorkingPakout(inSta.getBackSta());
                switch (inSta.getBackSta()) {
                    case 116:
                        if (pakout != null) {
                            if (devpThread.ioModeOf1F1 != IoModeType.PAKOUT_MODE) {
                                // 出库切换中
                                devpThread.ioModeOf1F1 = IoModeType.PAKOUT_BOOTING;
                                WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
                                        && !devpThread.getStation().get(inSta.getBackSta()).isLoading()
                                        && devpThread.getStation().get(inSta.getBackSta()).getWorkNo() == 0) {
                                    // 出库模式
                                    devpThread.ioModeOf1F1 = IoModeType.PAKOUT_MODE;
                                }
                            }
                        } else {
                            // 入库模式
                            devpThread.ioModeOf1F1 = IoModeType.PAKIN_MODE;
                        }
                        break;
            FyDevpThread devpThread = (FyDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
            WrkMast pakout = wrkMastService.selectWorkingPakout(1032);
            if (pakout != null) {
                if (devpThread.ioModeOf2_5 != IoModeType.PAKOUT_MODE) {
                    // 出库切换中
                    WrkMast pakin = wrkMastService.selectWorkingPakin(1032);
                    if (pakin == null && !devpThread.getStation().get(1031).isLoading()
                            && !devpThread.getStation().get(1032).isLoading()) {
                        // 出库模式
                        devpThread.ioModeOf2_5 = IoModeType.PAKOUT_MODE;
                    }
                }
            } else {
                // 入库模式
                devpThread.ioModeOf2_5 = IoModeType.PAKIN_MODE;
            }
        } catch (Exception e) {
            e.printStackTrace();