package com.liangjian.dataplatform.member.entity.po.primary;

import org.hibernate.annotations.GenericGenerator;

import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;

@Entity(name = "tag_rule_second")
public class TagRuleSecond implements Serializable {
    private static final long serialVersionUID = 7765100397803094209L;

    @Id
    @GeneratedValue(generator = "metaRelGenerator")
    @GenericGenerator(name = "metaRelGenerator", strategy = "com.liangjian.dataplatform.member.entity.genernator.SnowflakeGenernatorLong")
    private Long id;

    @Column(name = "name")
    private String name;

    @Column(name = "description")
    private String description;

//    @Column(name = "job_id")
//    private String jobId;

    @Column(name = "object_code")
    private String objectCode;

    @Column(name = "object_range")
    private String objectRange;

    @Column(name = "object_column")
    private String objectColumn;

    @Column(name = "output_condition")
    private String outputCondition;

    @Column(name = "db_id")
    private String dbId;

    @Column(name = "table_id")
    private String tableId;

    @Column(name = "tag_news")
    private String tagNews;
    /**
     *  分析方式 basicBehavior基础行为分析 behaviorStatistics行为统计分析 basicData基础资料分析
     */
    @Column(name="analysis_method")
    private String analysisMethod;

    @Column(name = "create_user")
    private String createUser;

    @Column(name = "create_time")
    private Date createTime;

    @Column(name = "update_user")
    private String updateUser;

    @Column(name = "update_time")
    private Date updateTime;

    @Transient
    private Boolean disable;
    @Transient
    private Date executionTime;
    @Transient
    private Integer repeatInterval;
    @Transient
    private Byte intervalUnit;

    public TagRuleSecond(){}

    public TagRuleSecond(Long id,String name,String description,String objectCode,String objectColumn,String outputCondition,Byte outputType
    ,String dbId,String tableId,String tagNews,String analysisMethod){
        this.id=id;
        this.name=name;
        this.description=description;
        this.objectCode=objectCode;
        this.objectColumn=objectColumn;
        this.outputCondition=outputCondition;
        this.dbId=dbId;
        this.tableId=tableId;
        this.tagNews=tagNews;
        this.analysisMethod=analysisMethod;
        this.objectRange="";
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getObjectCode() {
        return objectCode;
    }

    public void setObjectCode(String objectCode) {
        this.objectCode = objectCode;
    }

    public String getObjectRange() {
        return objectRange;
    }

    public void setObjectRange(String objectRange) {
        this.objectRange = objectRange;
    }

    public String getObjectColumn() {
        return objectColumn;
    }

    public void setObjectColumn(String objectColumn) {
        this.objectColumn = objectColumn;
    }


    public String getOutputCondition() {
        return outputCondition;
    }

    public void setOutputCondition(String outputCondition) {
        this.outputCondition = outputCondition;
    }


    public String getDbId() {
        return dbId;
    }

    public void setDbId(String dbId) {
        this.dbId = dbId;
    }

    public String getTableId() {
        return tableId;
    }

    public void setTableId(String tableId) {
        this.tableId = tableId;
    }

    public String getTagNews() {
        return tagNews;
    }

    public void setTagNews(String tagNews) {
        this.tagNews = tagNews;
    }

    public String getAnalysisMethod() {
        return analysisMethod;
    }

    public void setAnalysisMethod(String analysisMethod) {
        this.analysisMethod = analysisMethod;
    }

    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getUpdateUser() {
        return updateUser;
    }

    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public Boolean getDisable() {
        return disable;
    }

    public void setDisable(Boolean disable) {
        this.disable = disable;
    }

    public Date getExecutionTime() {
        return executionTime;
    }

    public void setExecutionTime(Date executionTime) {
        this.executionTime = executionTime;
    }

    public Integer getRepeatInterval() {
        return repeatInterval;
    }

    public void setRepeatInterval(Integer repeatInterval) {
        this.repeatInterval = repeatInterval;
    }

    public Byte getIntervalUnit() {
        return intervalUnit;
    }

    public void setIntervalUnit(Byte intervalUnit) {
        this.intervalUnit = intervalUnit;
    }
}
