1
2 天以前 bbddd048ae9016ae89136eb0f108b80ca38ed4f4
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java
@@ -1,5 +1,6 @@
package com.vincent.rsf.server.manager.schedules;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -8,6 +9,7 @@
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.cfg.CoercionAction;
import com.fasterxml.jackson.databind.cfg.CoercionInputShape;
import com.vincent.rsf.framework.common.Cools;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.config.RemotesInfoProperties;
@@ -255,6 +257,10 @@
                BasStation station = basStationService.getOne(new LambdaQueryWrapper<BasStation>()
                        .eq(BasStation::getStationName,
                        task.getTaskStatus().equals(TaskStsType.GENERATE_IN.id) ? task.getOrgSite() : task.getTargSite()));
                if (Cools.isEmpty(station)){
                    log.info("非光电站点任务下发:站点信息异常,任务信息:"+ JSON.toJSONString(task));
                    continue;
                }
                if (station.getType().equals(StationTypeEnum.STATION_TYPE_MUTI.type)) {
                    continue;
                }
@@ -374,7 +380,44 @@
        }
        /**判断是否光电站点,非光店站点需管控站点状态*/
        /**判断是否起点系统类型  非标准程序*/
        Loc locStart = null;
        if (task.getTaskType().equals(TaskType.TASK_TYPE_OUT.type) || task.getTaskType().equals(TaskType.TASK_TYPE_MERGE_OUT.type) ||
        task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_OUT.type) ||  task.getTaskType().equals(TaskType.TASK_TYPE_EMPITY_OUT.type)) {
            locStart = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, task.getOrgLoc()));
            if (Objects.isNull(locStart)) {
                throw new CoolException("源库位不存在!!");
            }
        }
        if (!Objects.isNull(locStart)) {
            taskParams.setSign(LocStsWcsOrOtherType.getApiType(locStart.getAreaId$()));
        } else {
            taskParams.setSign(LocStsWcsOrOtherType.LOC_STS_TYPE_RCS.type);
        }
        /**判断是否起点系统类型  非标准程序*/
        if (locStart == null){
            if (task.getTaskType().equals(TaskType.TASK_TYPE_IN.type) || task.getTaskType().equals(TaskType.TASK_TYPE_EMPITY_IN.type) ||
                    task.getTaskType().equals(TaskType.TASK_TYPE_PICK_IN.type) ||
                    task.getTaskType().equals(TaskType.TASK_TYPE_MERGE_IN.type) ||  task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_IN.type)
                ) {
                BasStation stationS = basStationService.getOne(new LambdaQueryWrapper<BasStation>().eq(BasStation::getStationName, task.getOrgSite()));
                if (Objects.isNull(stationS)) {
                    throw new CoolException("源库位不存在!!");
                }
                if (stationS.getType().equals(StationTypeEnum.STATION_TYPE_MUTI.type)) {
                    taskParams.setSign(LocStsWcsOrOtherType.LOC_STS_TYPE_WCS.type);
                } else {
                    taskParams.setSign(LocStsWcsOrOtherType.LOC_STS_TYPE_RCS.type);
                }
            }
        }
        /**判断是否光电站点,非光店站点需管控站点状态*/ //目标站点
        if (!Objects.isNull(station) && station.getType().equals(StationTypeEnum.STATION_TYPE_NORMAL.type)) {
            if (task.getTaskType() <= TaskType.TASK_TYPE_CHECK_IN.type && !task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)) {
//                if (!station.getUseStatus().equals(LocStsType.LOC_STS_TYPE_F.type)) {