package com.sandu.ximon.admin.vo; import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonIgnore; import com.sandu.ximon.admin.dto.BroadcastTaskType; import com.sandu.ximon.admin.param.IPTaskParam; import com.sandu.ximon.admin.param.IpVolumeMissionParam; import lombok.Data; import java.math.BigInteger; import java.util.ArrayList; import java.util.List; @Data public class TaskVO { private static final BigInteger systemReservation = BigInteger.valueOf(4294967295L); //private static final BigInteger startTime = BigInteger.valueOf(1604851200L); public static TaskVO generateTask( IpVolumeMissionParam param ) { TaskVO taskVO = new TaskVO(); taskVO.setUser(1); taskVO.setId(0); // 任务唯一标识(>=1,添加任务时为 0) taskVO.setEn(1); // 任务是否可用(开启 1,关闭 0) taskVO.setExe(1); // 任务运行状态(运行中 1,空闲 0) taskVO.setName(param.getMissionName()); // 任务名称 taskVO.setMode(0); // 任务广播方式(单播为 0,组播为 1) taskVO.setDur(systemReservation); // 系统保留 taskVO.setPower(1); // 预开功放时间(秒) taskVO.setPn(99); // 指定播放次数(默认为 1 次) taskVO.setLv(10); // 任务优先级别(11-100),数值越小,优先级别 越 大。 taskVO.setBtime(systemReservation); // 系统保留 taskVO.setRule(1); // 任务执行规则(每天为 0,每周为 1,手动为 2) taskVO.setBdate(param.getOnDate()); // 任务开始日期,一般为任务创建日期 taskVO.setEdate(param.getOffDate()); // 任务结束日期,一直有效为-1 taskVO.setWeek(0); // 每周执行规则,rule 为 1 时,有效 taskVO.setType(BroadcastTaskType.TIMED_TASK.getType()); //任务类型,定时任务为 1,采集任务为 2,实时音 频任务为 26,实时喊话任务为 27 taskVO.setSchemeID(1); // 任务方案 ID taskVO.setEi(0); // taskVO.setEchannel(0); taskVO.setPrule(0); taskVO.setSample(0); // 任务音频源类型为采集时,指定采集质量(8000、 16000、32000) taskVO.setVoice(0); taskVO.setInstime(1); taskVO.setIsins(0); taskVO.setPs(0); // 任务播放状态(空闲 0、播放中 1、暂停 2) taskVO.setI(0); // 当前任务播放音频文件标识 taskVO.setVol(param.getMissionVolume()); taskVO.setExec(param.getExec()); taskVO.setFiles(param.getFiles()); taskVO.setTerminals(param.getTerminals()); return taskVO; } // 任务唯一标识(>=1,添加任务时为 0) private Integer id; // 任务是否可用(开启 1,关闭 0) private Integer en; // 任务运行状态(运行中 1,空闲 0) private Integer exe; // 任务名称 private String name; // 任务广播方式(单播为 0,组播为 1) private Integer mode; // 系统保留 private BigInteger dur; // 预开功放时间(秒) private Integer power; // 创建用户 private Integer user; // 指定播放次数(默认为 1 次) private Integer pn; // 任务优先级别(11-100),数值越小,优先级别越大。 private Integer lv; // 系统保留 private BigInteger btime; // 任务执行规则(每天为 0,每周为 1,手动为 2) @JsonIgnore private Integer rule; // 任务开始日期,一般为任务创建日期 private BigInteger bdate; // 任务结束日期,一直有效为-1 private BigInteger edate; // 每周执行规则,rule 为 1 时,有效 private Integer week; // 任务类型,定时任务为 1 private Integer type; // private Integer SchemeID; // 系统保留 private Integer ei; // 系统保留 private Integer echannel; // 系统保留 private Integer prule; // 任务音频源类型为采集时,指定采集质量(8000、 16000、32000) private Integer sample; // 系统保留 private Integer voice; // 系统保留 private Integer instime; // 系统保留 private Integer isins; // 任务播放状态(空闲 0、播放中 1、暂停 2) private Integer ps; // 当前任务播放音频文件标识 private Integer i; // 任务指定音量(1—100,为-1 不指定音量) private Integer vol; // 任务执行时间列表 private TaskRunTimeVO[] exec; // 音频文件列表 @JsonIgnore private TaskMediaFileVO[] files; // 播放终端 ID 列表 @JsonIgnore private TaskTerminalVO[] terminals; @JsonIgnore private String userName; private String weeks; private List fileIds=new ArrayList<>(); private List TerminalIds=new ArrayList<>(); }