SysJob.java 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  1. package com.sooka.quartz.domain;
  2. import java.io.Serializable;
  3. import java.util.Date;
  4. import javax.validation.constraints.*;
  5. import org.apache.commons.lang3.builder.ToStringBuilder;
  6. import org.apache.commons.lang3.builder.ToStringStyle;
  7. import com.sooka.common.annotation.Excel;
  8. import com.sooka.common.annotation.Excel.ColumnType;
  9. import com.sooka.common.constant.ScheduleConstants;
  10. import com.sooka.common.core.domain.BaseEntity;
  11. import com.sooka.common.utils.StringUtils;
  12. import com.sooka.quartz.util.CronUtils;
  13. /**
  14. * 定时任务调度表 sys_job
  15. *
  16. * @author lei_wang
  17. */
  18. public class SysJob extends BaseEntity implements Serializable
  19. {
  20. private static final long serialVersionUID = 1L;
  21. /** 任务ID */
  22. @Excel(name = "任务序号", cellType = ColumnType.NUMERIC)
  23. private Long jobId;
  24. /** 任务名称 */
  25. @Excel(name = "任务名称")
  26. private String jobName;
  27. /** 任务组名 */
  28. @Excel(name = "任务组名")
  29. private String jobGroup;
  30. /** 调用目标字符串 */
  31. @Excel(name = "调用目标字符串")
  32. private String invokeTarget;
  33. /** cron执行表达式 */
  34. @Excel(name = "执行表达式 ")
  35. private String cronExpression;
  36. /** cron计划策略 */
  37. @Excel(name = "计划策略 ", readConverterExp = "0=默认,1=立即触发执行,2=触发一次执行,3=不触发立即执行")
  38. private String misfirePolicy = ScheduleConstants.MISFIRE_DEFAULT;
  39. /** 是否并发执行(0允许 1禁止) */
  40. @Excel(name = "并发执行", readConverterExp = "0=允许,1=禁止")
  41. private String concurrent;
  42. /** 任务状态(0正常 1暂停) */
  43. @Excel(name = "任务状态", readConverterExp = "0=正常,1=暂停")
  44. private String status;
  45. public Long getJobId()
  46. {
  47. return jobId;
  48. }
  49. public void setJobId(Long jobId)
  50. {
  51. this.jobId = jobId;
  52. }
  53. @NotBlank(message = "任务名称不能为空")
  54. @Size(min = 0, max = 64, message = "任务名称不能超过64个字符")
  55. public String getJobName()
  56. {
  57. return jobName;
  58. }
  59. public void setJobName(String jobName)
  60. {
  61. this.jobName = jobName;
  62. }
  63. public String getJobGroup()
  64. {
  65. return jobGroup;
  66. }
  67. public void setJobGroup(String jobGroup)
  68. {
  69. this.jobGroup = jobGroup;
  70. }
  71. @NotBlank(message = "调用目标字符串不能为空")
  72. @Size(min = 0, max = 1000, message = "调用目标字符串长度不能超过500个字符")
  73. public String getInvokeTarget()
  74. {
  75. return invokeTarget;
  76. }
  77. public void setInvokeTarget(String invokeTarget)
  78. {
  79. this.invokeTarget = invokeTarget;
  80. }
  81. @NotBlank(message = "Cron执行表达式不能为空")
  82. @Size(min = 0, max = 255, message = "Cron执行表达式不能超过255个字符")
  83. public String getCronExpression()
  84. {
  85. return cronExpression;
  86. }
  87. public void setCronExpression(String cronExpression)
  88. {
  89. this.cronExpression = cronExpression;
  90. }
  91. public Date getNextValidTime()
  92. {
  93. if (StringUtils.isNotEmpty(cronExpression))
  94. {
  95. return CronUtils.getNextExecution(cronExpression);
  96. }
  97. return null;
  98. }
  99. public String getMisfirePolicy()
  100. {
  101. return misfirePolicy;
  102. }
  103. public void setMisfirePolicy(String misfirePolicy)
  104. {
  105. this.misfirePolicy = misfirePolicy;
  106. }
  107. public String getConcurrent()
  108. {
  109. return concurrent;
  110. }
  111. public void setConcurrent(String concurrent)
  112. {
  113. this.concurrent = concurrent;
  114. }
  115. public String getStatus()
  116. {
  117. return status;
  118. }
  119. public void setStatus(String status)
  120. {
  121. this.status = status;
  122. }
  123. @Override
  124. public String toString() {
  125. return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
  126. .append("jobId", getJobId())
  127. .append("jobName", getJobName())
  128. .append("jobGroup", getJobGroup())
  129. .append("cronExpression", getCronExpression())
  130. .append("nextValidTime", getNextValidTime())
  131. .append("misfirePolicy", getMisfirePolicy())
  132. .append("concurrent", getConcurrent())
  133. .append("status", getStatus())
  134. .append("createBy", getCreateBy())
  135. .append("createTime", getCreateTime())
  136. .append("updateBy", getUpdateBy())
  137. .append("updateTime", getUpdateTime())
  138. .append("remark", getRemark())
  139. .toString();
  140. }
  141. }