1
zhang
1 天以前 d35e2accdca4b3762359231f4fe479c9538b6f6f
zy-acs-cv/src/main/java/com/zy/core/operation/handler/SendTaskOperationHandler.java
@@ -1,6 +1,11 @@
package com.zy.core.operation.handler;
import com.core.common.Cools;
import com.core.common.DateUtils;
import com.zy.asrs.controller.vo.OpenBusSubmitParam;
import com.zy.asrs.controller.vo.TaskDto;
import com.zy.asrs.entity.Job;
import com.zy.asrs.service.CtuMainService;
import com.zy.asrs.service.JobService;
import com.zy.core.cache.SlaveConnection;
import com.zy.core.enums.ConveyorStateType;
@@ -15,6 +20,10 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
 * 发送任务给RCS
@@ -31,13 +40,16 @@
    private JobService jobService;
    @Autowired
    private CtuMainService ctuMainService;
    @Override
    public ConveyorStateType getType() {
        return ConveyorStateType.SENDTASK;
    }
    @Override
    public void execute(CtuOperationConfig config) {
    public synchronized void execute(CtuOperationConfig config) {
        try {
            // 根据输送线plc遍历
            for (DevpSlave devp : slaveProperties.getDevp()) {
@@ -57,9 +69,27 @@
                    }
                    if (staProtocol.getWorkNo() > 0 && staProtocol.isAutoing()) {
                        Job job = jobService.getJobByJobNo(staProtocol.getWorkNo());
                        if (job != null && job.getJobSts() == 4) {
                            job.setJobSts(5);
                            jobService.updateById(job);
                        if (job != null && job.getJobSts() == 5) {
                            OpenBusSubmitParam openBusSubmitParam = new OpenBusSubmitParam();
                            openBusSubmitParam.setBatchNo(DateUtils.convert(new Date()));
                            List<TaskDto> taskList = new ArrayList<>();
                            TaskDto taskDto = new TaskDto();
                            taskDto.setTaskNo(job.getTaskNo());
                            taskDto.setBatchNo(job.getBatchNo());
                            taskDto.setOriSta(job.getStaNo());
                            taskDto.setDestLoc(job.getLoc());
                            //TODO
                            taskDto.setPriority(9527);
                            taskList.add(taskDto);
                            openBusSubmitParam.setTasks(taskList);
                            if (ctuMainService.sendTask(openBusSubmitParam)) {
                                job.setJobSts(7);
                                job.setRcsTime(new Date());
                                jobService.updateById(job);
                                log.info("任务发送给RCS成功," + job.getTaskNo() + " - " + job.getJobNo());
                            } else {
                                log.info("任务发送给RCS失败," + job.getTaskNo() + " - " + job.getJobNo());
                            }
                        }
                    }
                }