package tech.easyflow.approval.entity.base;

import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;

import java.io.Serializable;
import java.math.BigInteger;
import java.util.Date;

/**
 * 审批流程范围基础字段。
 */
public class ApprovalFlowScopeBase implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id(keyType = KeyType.Generator, value = "snowFlakeId", comment = "主键")
    private BigInteger id;

    @Column(comment = "流程ID")
    private BigInteger flowId;

    @Column(comment = "范围类型")
    private String scopeType;

    @Column(comment = "范围值")
    private BigInteger scopeValue;

    @Column(comment = "是否包含子节点")
    private Integer includeChildren;

    @Column(comment = "创建时间")
    private Date created;

    @Column(comment = "创建者")
    private BigInteger createdBy;

    @Column(comment = "修改时间")
    private Date modified;

    @Column(comment = "修改者")
    private BigInteger modifiedBy;

    public BigInteger getId() {
        return id;
    }

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

    public BigInteger getFlowId() {
        return flowId;
    }

    public void setFlowId(BigInteger flowId) {
        this.flowId = flowId;
    }

    public String getScopeType() {
        return scopeType;
    }

    public void setScopeType(String scopeType) {
        this.scopeType = scopeType;
    }

    public BigInteger getScopeValue() {
        return scopeValue;
    }

    public void setScopeValue(BigInteger scopeValue) {
        this.scopeValue = scopeValue;
    }

    public Integer getIncludeChildren() {
        return includeChildren;
    }

    public void setIncludeChildren(Integer includeChildren) {
        this.includeChildren = includeChildren;
    }

    public Date getCreated() {
        return created;
    }

    public void setCreated(Date created) {
        this.created = created;
    }

    public BigInteger getCreatedBy() {
        return createdBy;
    }

    public void setCreatedBy(BigInteger createdBy) {
        this.createdBy = createdBy;
    }

    public Date getModified() {
        return modified;
    }

    public void setModified(Date modified) {
        this.modified = modified;
    }

    public BigInteger getModifiedBy() {
        return modifiedBy;
    }

    public void setModifiedBy(BigInteger modifiedBy) {
        this.modifiedBy = modifiedBy;
    }
}
