pjb
8 天以前 759b3a648545c518a81e80e9448608e68fb17fd5
src/main/java/com/zy/service/impl/MainServiceImpl.java
@@ -827,12 +827,25 @@
        if (config != null && config.getStatus() == 1) {
            crnAvailableOut = true;
        }
        // 限制去捆绑机器任务数
        int kbWrks = wrkMastMapper.selectCountByKb();
        for (CrnSlave.CrnStn crnStn : slave.getCrnOutStn()) {
            // 获取工作状态为11(生成出库ID)的出库工作档
            List<WrkMast> wrkMasts = wrkMastMapper.selectPakOutStep11(slave.getId(), crnStn.getStaNo());
            for (WrkMast wrkMast : wrkMasts) {
                if (wrkMast == null) {
                    continue;
                }
                if (wrkMast.getStaNo() == 1031) {
                    // 获取1033无状态时任务数+1
                    SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
                    StaProtocol staProtocol = devpThread.getStation().get(1033);
                    if (staProtocol.isLoading() && staProtocol.getWorkNo() == 0) {
                        kbWrks ++;
                    }
                    if (kbWrks > 1) {
                        continue;
                    }
                }
                // 工作档状态判断
                if (wrkMast.getIoType() < 100 || wrkMast.getSourceStaNo() == null) {
@@ -1764,34 +1777,34 @@
                    continue;
                }
                // 1083,1086,1089 外形检测失败,不是去异常口的 停在原处
//                if (staProtocol.getSiteId() == 1083 || staProtocol.getSiteId() == 1086 || staProtocol.getSiteId() == 1089 && wrkMast.getStaNo() != 1090) {
//                    boolean back = false;
//                    String errMsg = "";
//                    if (staProtocol.isFrontErr()) {
//                        errMsg = "前超限";
//                        back = true;
//                    }
//                    if (!back && staProtocol.isBackErr()) {
//                        errMsg = "后超限";
//                        back = true;
//                    }
//                    if (!back && staProtocol.isHighErr()) {
//                        errMsg = "高超限";
//                        back = true;
//                    }
//                    if (!back && staProtocol.isLeftErr()) {
//                        errMsg = "左超限";
//                        back = true;
//                    }
//                    if (!back && staProtocol.isRightErr()) {
//                        errMsg = "右超限";
//                        back = true;
//                    }
//                    if (back) {
//                        log.error("{}站点,外形检测失败:{}",site,errMsg);
//                        continue;
//                    }
//                }
                if (staProtocol.getSiteId() == 1083 || staProtocol.getSiteId() == 1086 || staProtocol.getSiteId() == 1089 && wrkMast.getStaNo() != 1090) {
                    boolean back = false;
                    String errMsg = "";
                    if (staProtocol.isFrontErr()) {
                        errMsg = "前超限";
                        back = true;
                    }
                    if (!back && staProtocol.isBackErr()) {
                        errMsg = "后超限";
                        back = true;
                    }
                    if (!back && staProtocol.isHighErr()) {
                        errMsg = "高超限";
                        back = true;
                    }
                    if (!back && staProtocol.isLeftErr()) {
                        errMsg = "左超限";
                        back = true;
                    }
                    if (!back && staProtocol.isRightErr()) {
                        errMsg = "右超限";
                        back = true;
                    }
                    if (back) {
                        log.error("{}站点,外形检测失败:{}",site,errMsg);
                        continue;
                    }
                }
                if (staProtocol.getSiteId() == 1090 && wrkMast.getStaNo() == 1090) {
                    continue;
                }
@@ -1801,12 +1814,12 @@
                        DevpThread devpThread2 = (DevpThread) SlaveConnection.get(SlaveType.Devp, 2);
                        StaProtocol staProtocol2 = devpThread2.getStation().get(1090);
                        if(!staProtocol2.isAutoing() || staProtocol2.isLoading() || staProtocol2.getWorkNo() != 0) {
                            log.info("去异常口目标站点,非自动,有物,工作号为:{}",staProtocol2.getWorkNo());
                            log.info("{}去异常口目标站点,自动:{},有物:{},工作号为:{}",wrkMast.getWrkNo(),staProtocol2.isAutoing(),staProtocol2.isLoading(),staProtocol2.getWorkNo());
                            continue;
                        }
                        int count = wrkMastService.selectCount(new EntityWrapper<WrkMast>().where("sta_no = 1090 and wrk_sts in (9,10)"));
                        int count = wrkMastService.selectCount(new EntityWrapper<WrkMast>().where("sta_no = 1090 AND (wrk_sts IN (9,10) OR (wrk_sts = 2 AND rgv_finish_time IS NOT NULL))"));
                        if (count > 0) {
                            log.info("去异常口,但是前面有去异常口任务数:{}",count);
                            log.info("{}去异常口,但是前面有去异常口任务数:{}",wrkMast.getWrkNo(),count);
                            continue;
                        }
                    }