diff --git a/powerjob-server/powerjob-server-starter/src/main/java/tech/powerjob/server/web/response/JobInfoVO.java b/powerjob-server/powerjob-server-starter/src/main/java/tech/powerjob/server/web/response/JobInfoVO.java index c90e728b..0b7a23f0 100644 --- a/powerjob-server/powerjob-server-starter/src/main/java/tech/powerjob/server/web/response/JobInfoVO.java +++ b/powerjob-server/powerjob-server-starter/src/main/java/tech/powerjob/server/web/response/JobInfoVO.java @@ -1,8 +1,10 @@ package tech.powerjob.server.web.response; +import com.alibaba.fastjson.JSON; import tech.powerjob.common.enums.ExecuteType; import tech.powerjob.common.enums.ProcessorType; import tech.powerjob.common.enums.TimeExpressionType; +import tech.powerjob.common.model.AlarmConfig; import tech.powerjob.common.utils.CommonUtils; import tech.powerjob.server.common.SJ; import tech.powerjob.common.enums.DispatchStrategy; @@ -28,66 +30,109 @@ public class JobInfoVO { private Long id; /* ************************** 任务基本信息 ************************** */ - // 任务名称 + /** + * 任务名称 + */ private String jobName; - // 任务描述 + /** + * 任务描述 + */ private String jobDescription; - // 任务所属的应用ID + /** + * 任务所属的应用ID + */ private Long appId; - // 任务自带的参数 + /** + * 任务自带的参数 + */ private String jobParams; /* ************************** 定时参数 ************************** */ - // 时间表达式类型(CRON/API/FIX_RATE/FIX_DELAY) + /** + * 时间表达式类型(CRON/API/FIX_RATE/FIX_DELAY) + */ private String timeExpressionType; - // 时间表达式,CRON/NULL/LONG/LONG + /** + * 时间表达式,CRON/NULL/LONG/LONG + */ private String timeExpression; /* ************************** 执行方式 ************************** */ - // 执行类型,单机/广播/MR + /** + * 执行类型,单机/广播/MR + */ private String executeType; - // 执行器类型,Java/Shell + /** + * 执行器类型,Java/Shell + */ private String processorType; - // 执行器信息 + /** + * 执行器信息 + */ private String processorInfo; /* ************************** 运行时配置 ************************** */ - // 最大同时运行任务数,默认 1 + /** + * 最大同时运行任务数,默认 1 + */ private Integer maxInstanceNum; - // 并发度,同时执行某个任务的最大线程数量 + /** + * 并发度,同时执行某个任务的最大线程数量 + */ private Integer concurrency; - // 任务整体超时时间 + /** + * 任务整体超时时间 + */ private Long instanceTimeLimit; /* ************************** 重试配置 ************************** */ + private Integer instanceRetryNum; private Integer taskRetryNum; - // 1 正常运行,2 停止(不再调度) + /** + * 1 正常运行,2 停止(不再调度) + */ private boolean enable; - // 下一次调度时间 + /** + * 下一次调度时间 + */ private Long nextTriggerTime; - // 下一次调度时间(文字版) + /** + * 下一次调度时间(文字版) + */ private String nextTriggerTimeStr; /* ************************** 繁忙机器配置 ************************** */ - // 最低CPU核心数量,0代表不限 + /** + * 最低CPU核心数量,0代表不限 + */ private double minCpuCores; - // 最低内存空间,单位 GB,0代表不限 + /** + * 最低内存空间,单位 GB,0代表不限 + */ private double minMemorySpace; - // 最低磁盘空间,单位 GB,0代表不限 + /** + * 最低磁盘空间,单位 GB,0代表不限 + */ private double minDiskSpace; private Date gmtCreate; private Date gmtModified; /* ************************** 集群配置 ************************** */ - // 指定机器运行,空代表不限,非空则只会使用其中的机器运行(多值逗号分割) + /** + * 指定机器运行,空代表不限,非空则只会使用其中的机器运行(多值逗号分割) + */ private String designatedWorkers; - // 最大机器数量 + /** + * 最大机器数量 + */ private Integer maxWorkerCount; - // 报警用户ID列表 + /** + * 报警用户ID列表 + */ private List notifyUserIds; private String extra; @@ -96,6 +141,8 @@ public class JobInfoVO { private String lifecycle; + private AlarmConfig alarmConfig; + public static JobInfoVO from(JobInfoDO jobInfoDO) { JobInfoVO jobInfoVO = new JobInfoVO(); BeanUtils.copyProperties(jobInfoDO, jobInfoVO); @@ -118,6 +165,10 @@ public class JobInfoVO { } jobInfoVO.setNextTriggerTimeStr(CommonUtils.formatTime(jobInfoDO.getNextTriggerTime())); + if (!StringUtils.isEmpty(jobInfoDO.getAlarmConfig())){ + jobInfoVO.setAlarmConfig(JSON.parseObject(jobInfoDO.getAlarmConfig(),AlarmConfig.class)); + } + return jobInfoVO; } }