#
cpT
9 天以前 45cf0155027278bd4927ad25b40322b47df78c1c
#
3个文件已修改
49 ■■■■ 已修改文件
src/main/java/com/zy/core/model/StationObjModel.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/plugin/XiaosongProcess.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/utils/DualCrnOperateProcessUtils.java 33 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/model/StationObjModel.java
@@ -19,8 +19,13 @@
    private Integer barcodeIdx;
    //站点绑定双工位堆垛机工位
    private Integer dualCrnExecuteStation;
    private StationObjModel barcodeStation;
    private StationObjModel backStation;
    private StationObjModel dualCrnSlaveStation;
}
src/main/java/com/zy/core/plugin/XiaosongProcess.java
@@ -26,6 +26,7 @@
import com.zy.core.plugin.api.MainProcessPluginApi;
import com.zy.core.thread.StationThread;
import com.zy.core.utils.CrnOperateProcessUtils;
import com.zy.core.utils.DualCrnOperateProcessUtils;
import com.zy.core.utils.StationOperateProcessUtils;
import com.zy.core.utils.WmsOperateUtils;
import lombok.extern.slf4j.Slf4j;
@@ -54,6 +55,8 @@
    private RedisUtil redisUtil;
    @Autowired
    private WmsOperateUtils wmsOperateUtils;
    @Autowired
    private DualCrnOperateProcessUtils dualCrnOperateProcessUtils;
    @Override
    public void run() {
@@ -72,6 +75,14 @@
        stationOperateProcessUtils.stationOutExecute();
        //检测输送站点出库任务执行完成
        stationOperateProcessUtils.stationOutExecuteFinish();
        //检测输送站点是否运行堵塞
        stationOperateProcessUtils.checkStationRunBlock();
        // 执行双工位堆垛机任务
        dualCrnOperateProcessUtils.dualCrnIoExecute();
        // 双工位堆垛机任务执行完成
        dualCrnOperateProcessUtils.dualCrnIoExecuteFinish();
    }
    /**
src/main/java/com/zy/core/utils/DualCrnOperateProcessUtils.java
@@ -248,11 +248,6 @@
        }
        Integer crnNo = basDualCrnp.getCrnNo();
        int station = calcStation(dualCrnProtocol, "in");
        if (station == 0) {
            News.info("双工位堆垛机:{} 无可用工位", basDualCrnp.getCrnNo());
            return false;
        }
        if (wrkMast.getWrkSts() != WrkStsType.INBOUND_DEVICE_RUN.sts) {
            return false;
@@ -311,6 +306,33 @@
                inStationObjModel = stationObjModel;
                break;
            }
            StationObjModel dualCrnSlaveStationObjModel = stationObjModel.getDualCrnSlaveStation();
            if (dualCrnSlaveStationObjModel == null) {
                continue;
            }
            StationProtocol slaveStationProtocol = stationProtocolMap.get(dualCrnSlaveStationObjModel.getStationId());
            if (slaveStationProtocol == null) {
                continue;
            }
            if (!slaveStationProtocol.isAutoing()) {
                continue;
            }
            if (!slaveStationProtocol.isLoading()) {
                continue;
            }
            if (slaveStationProtocol.getTaskNo() <= 0) {
                continue;
            }
            if (slaveStationProtocol.getTaskNo().equals(wrkMast.getWrkNo())) {
                inStationObjModel = dualCrnSlaveStationObjModel;
                break;
            }
        }
        if (inStationObjModel == null) {
@@ -318,6 +340,7 @@
            return false;
        }
        Integer station = inStationObjModel.getDualCrnExecuteStation();
        String sourceLocNo = Utils.getLocNo(inStationObjModel.getDeviceRow(), inStationObjModel.getDeviceBay(), inStationObjModel.getDeviceLev());
        List<DualCrnCommand> commandList = new ArrayList<>();