elkers
8 天以前 7d84a1cbcb2e869eb0494893b08a4d0c9afe87aa
src/main/java/com/nanjing/water/service/quartz/QuartzExecutor.java
@@ -5,11 +5,15 @@
import com.google.gson.JsonParser;
import com.nanjing.water.common.ConstantFactory;
import com.nanjing.water.common.ExecutedResult;
import com.nanjing.water.common.util.ListUtil;
import com.nanjing.water.common.util.LocalDateTimeUtil;
import com.nanjing.water.common.util.NumericUtil;
import com.nanjing.water.common.util.StringUtil;
import com.nanjing.water.repository.impl.MonitorVideoStreamingMapperImpl;
import com.nanjing.water.repository.impl.QuartzTaskErrorMapperImpl;
import com.nanjing.water.repository.impl.QuartzTaskRecordMapperImpl;
import com.nanjing.water.repository.po.MonitorVideoStreamingPO;
import com.nanjing.water.service.MonitorVideoStreamingService;
import com.nanjing.water.service.WaterFacilityParameterService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -18,6 +22,7 @@
import java.lang.reflect.Method;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Objects;
@Service
@@ -30,6 +35,10 @@
    private QuartzTaskErrorMapperImpl taskErrorsDao;
    @Autowired
    private WaterFacilityParameterService waterFacilityParameterService;
    @Autowired
    private MonitorVideoStreamingService streamingService;
    @Autowired
    private MonitorVideoStreamingMapperImpl streamingMapper;
    /**
     * 执行job
@@ -58,6 +67,26 @@
        }
    }
    /***
     * job执行器-定时关闭直播流
     */
    public ExecutedResult<String> stopVideo(String jobParameter) {
        try {
            //查询正在直播的列表
            List<MonitorVideoStreamingPO> list = streamingMapper.list4WaitingStop();
            if (ListUtil.isNotNullOrEmpty(list)) {
                for (MonitorVideoStreamingPO po : list) {
                    ExecutedResult<MonitorVideoStreamingPO> stop = streamingService.stop(po.getDeviceId(), po.getChannelId(), "无人观看,主动断开");
                    if (stop.isFailed() || Objects.isNull(stop.getData())) {
                        ExecutedResult.failed("停止点播定时任务调用接口失败!");
                    }
                }
            }
            return ExecutedResult.success();
        } catch (Exception e) {
            return ExecutedResult.failed(e.toString());
        }
    }
    /***
     * job执行器-清理任务调度日志
     * @param jobParameter 执行参数
     */