package org.nl.system.service.quartz.dao;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;

/**
 * <p>
 * 定时任务表
 * </p>
 *
 * @author generator
 * @since 2022-12-19
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("sys_quartz_job")
public class SysQuartzJob implements Serializable {

    public static final String JOB_KEY = "JOB_KEY";

    private static final long serialVersionUID = 1L;

    /**
     * 标识
     */
    @TableId(value = "job_id")
    private String job_id;

    /**
     * bean名
     */
    @NotBlank
    private String bean_name;

    /**
     * corn表达式
     */
    @NotBlank
    private String cron_expression;

    /**
     * 状态
     */
    private Boolean is_pause;

    /**
     * 任务名称
     */
    @NotBlank
    private String job_name;

    /**
     * 方法名称
     */
    @NotBlank
    private String method_name;

    /**
     * 参数
     */
    private String params;

    /**
     * 备注
     */
    @NotBlank
    private String description;

    /**
     * 负责人
     */
    private String person_in_charge;

    /**
     * 邮箱
     */
    private String email;

    /**
     * 子任务ID
     */
    private String sub_task;

    /**
     * 失败状态
     */
    private Boolean pause_after_failure;

    /**
     * 创建人标识
     */
    private String create_id;

    /**
     * 创建人
     */
    private String create_name;

    /**
     * 创建时间
     */
    private String create_time;

    /**
     * 修改人标识
     */
    private String update_id;

    /**
     * 修改人
     */
    private String update_name;

    /**
     * 修改时间
     */
    private String update_time;

    @TableField(exist = false)
    private String uuid;
}
