skyouc
2 天以前 4158164db6bbdbbcf2c2c096ba619307dc4148d8
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java
@@ -7,6 +7,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.DateUtils;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.config.RemotesInfoProperties;
@@ -240,7 +241,7 @@
    /**
     * 非光电站点任务下发
     */
    @Scheduled(cron = "0/55 * * * * ?  ")
    @Scheduled(cron = "0/55 * * * * ?  ")
    @Transactional(rollbackFor = Exception.class)
    public void pubTaskToWcs() {
        Long loginUserId = SystemAuthUtils.getLoginUserId();
@@ -252,19 +253,33 @@
                .in(Task::getTaskType, list)
                .in(Task::getTaskStatus, integers)
                .orderByDesc(Task::getSort));
        for (Task task : tasks) {
            /**移库不做站点操作*/
            if (!task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)) {
                BasStation station = basStationService.getOne(new LambdaQueryWrapper<BasStation>()
                        .eq(BasStation::getStationName,
                                task.getTaskStatus().equals(TaskStsType.GENERATE_IN.id) ? task.getOrgSite() : task.getTargSite()));
                if (station.getType().equals(StationTypeEnum.STATION_TYPE_MUTI.type)) {
                    continue;
        if (tasks.isEmpty()) {
            return;
        }
        Config config = configService.getOne(new LambdaQueryWrapper<Config>().eq(Config::getFlag, GlobalConfigCode.ALLOW_PUB_TASK));
        if (!Objects.isNull(config) && !Objects.isNull(config.getVal())) {
            Integer val = Integer.parseInt(config.getVal());
            if (val > 1) {
                List<Task> tasks1 = tasks.stream().sorted(Comparator.comparing(Task::getCreateTime)).collect(Collectors.toList());
                Task task = tasks1.stream().findFirst().get();
                if (DateUtils.diffToSeconds(task.getCreateTime(), new Date()) < val) {
                    return;
                }
            }
            /**下发普通站点任务,报错回滚,不再往下执行*/
            pubTaskToWcs(tasks);
        }
//        for (Task task : tasks) {
//            /**移库不做站点操作*/
//            if (!task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)) {
//                BasStation station = basStationService.getOne(new LambdaQueryWrapper<BasStation>()
//                        .eq(BasStation::getStationName,
//                                task.getTaskStatus().equals(TaskStsType.GENERATE_IN.id) ? task.getOrgSite() : task.getTargSite()));
//                if (station.getType().equals(StationTypeEnum.STATION_TYPE_MUTI.type)) {
//                    continue;
//                }
//            }
//        }
        /**下发普通站点任务,报错回滚,不再往下执行*/
        pubTaskToWcs(tasks);
    }
    /**