999
zhangc
2025-04-18 b095bc486863e7fb15f7f798595b8a365b1cd26e
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -2105,4 +2105,41 @@
    }
    /**
     * 入出库模式切换函数
     */
    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;
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}