1
zhang
12 小时以前 286eadc0913fe9974ab2f2fd188fb707dc16ad40
zy-acs-cv/src/main/java/com/zy/core/operation/handler/OutOperationHandler.java
@@ -6,11 +6,11 @@
import com.zy.asrs.service.CtuMainService;
import com.zy.asrs.service.JobService;
import com.zy.asrs.service.WrkLastnoService;
import com.zy.common.utils.News;
import com.zy.core.cache.MessageQueue;
import com.zy.core.cache.SlaveConnection;
import com.zy.core.enums.ConveyorStateType;
import com.zy.core.enums.SlaveType;
import com.zy.core.enums.TaskType;
import com.zy.core.model.DevpSlave;
import com.zy.core.model.Task;
import com.zy.core.model.protocol.StaProtocol;
@@ -65,9 +65,17 @@
                    }
                    // 判断是否满足条件
                    if (!staProtocol.isLoading()) {
                        if (staProtocol.getWorkNo() > 0) {
                            log.error("输送线上有任务号无货,需要人工处理:{}", staProtocol.getSiteId());
                        }
                        continue;
                    }
                    if (staProtocol.isAutoing() && staProtocol.getWorkNo() == 0) {
                        if (staProtocol.isInEnable()) {
                            log.error("没有可入信号:{}", staProtocol.getSiteId());
                            continue;
                        }
                        String seqNum = ctuMainService.checkStationStatus(releaseSta.getStaNo());
                        if (seqNum != null) {
                            Job jobBySeqNum = jobService.getJobByTaskNo(seqNum);
@@ -79,23 +87,20 @@
                                Job job = new Job();
                                job.setTaskNo(seqNum);
                                job.setJobNo(workNo);
                                job.setJobSts(2);
                                job.setJobSts(ConveyorStateType.OUTBOUND.getStatus());
                                if (!jobService.insert(job)) {
                                    throw new CoolException("插入输送线任务失败," + jobBySeqNum + " - " + workNo);
                                }
                                devpThread.setPakMk(staProtocol.getSiteId(), false);
                                boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
                                boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(TaskType.WRITE, staProtocol));
                                if (result) {
                                    log.info("输送线下发:{},{}", staProtocol.getWorkNo(), releaseSta.getTargetSta());
                                } else {
                                    News.error("" + config.getMark() + " - 发布命令至输送线队列失败!!! [plc编号:{}]", devp.getId());
                                    log.error("发布命令至输送线队列失败!!! [plc编号:{}]", devp.getId());
                                }
                            }
                        } else {
                            News.errorNoLog("" + config.getMark() + " - 站点信息不符合入库条件!!!" + " 调用RCS检验未通过,站点:" + staProtocol.getSiteId());
                            log.info("站点信息不符合入库条件!!!" + " 调用RCS检验未通过,站点:{}", staProtocol.getSiteId());
                        }
                    } else {
                        News.errorNoLog("" + config.getMark() + " - 站点信息不符合入库条件!!!" + " 自动信号:" + staProtocol.isLoading() + "、可入信号:" + staProtocol.isInEnable() + "、空板信号:" + staProtocol.isEmptyMk() + "、工作号:" + staProtocol.getWorkNo() + "、锁定标记" + staProtocol.isPakMk());
                    }
                }
            }