package com.goer.project.model.modelVersion.domain;

import com.goer.project.model.modelVersionChanges.domain.ModelVersionChanges;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.goer.framework.aspectj.lang.annotation.Excel;
import com.goer.framework.web.domain.BaseEntity;

import java.util.List;

/**
 * 模型对象版本号对象 t_model_version
 * 
 * @author goer
 * @date 2022-01-17
 */
public class ModelVersion extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 模型对象ID */
    @Excel(name = "模型对象ID")
    private Long projectId;

    /** 版本号 */
    @Excel(name = "版本号")
    private String versionNo;

    /** 版本描述 */
    @Excel(name = "版本描述")
    private String versionRemark;

    /** 同步标识 */
    @Excel(name = "同步标识")
    private String syncFlag;

    /** 基版本id */
    @Excel(name = "基版本id")
    private Long parentVersionId;

    /** mysql、db2*/
    private String dbType;

    private String changeContent;

    private String scriptContent;

    private List<ModelVersionChanges> changeContents;

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

    public Long getId()
    {
        return id;
    }
    public void setProjectId(Long projectId)
    {
        this.projectId = projectId;
    }

    public Long getProjectId()
    {
        return projectId;
    }
    public void setVersionNo(String versionNo)
    {
        this.versionNo = versionNo;
    }

    public String getVersionNo()
    {
        return versionNo;
    }

    public void setVersionRemark(String versionRemark)
    {
        this.versionRemark = versionRemark;
    }
    public String getVersionRemark()
    {
        return versionRemark;
    }

    public void setSyncFlag(String syncFlag)
    {
        this.syncFlag = syncFlag;
    }
    public String getSyncFlag()
    {
        return syncFlag;
    }

    public void setParentVersionId(Long parentVersionId)
    {
        this.parentVersionId = parentVersionId;
    }
    public Long getParentVersionId()
    {
        return parentVersionId;
    }

    public void setDbType(String dbType)
    {
        this.dbType = dbType;
    }
    public String getDbType()
    {
        return dbType;
    }

    public void setChangeContent(String changeContent)
    {
        this.changeContent = changeContent;
    }
    public String getChangeContent()
    {
        return changeContent;
    }

    public void setScriptContent(String scriptContent)
    {
        this.scriptContent = scriptContent;
    }
    public String getScriptContent()
    {
        return scriptContent;
    }

    public void setChangeContents(List<ModelVersionChanges> changeContents)
    {
        this.changeContents = changeContents;
    }
    public List<ModelVersionChanges> getChangeContents()
    {
        return changeContents;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("projectId", getProjectId())
            .append("versionNo", getVersionNo())
            .append("versionRemark", getVersionRemark())
            .append("syncFlag", getSyncFlag())
            .append("parentVersionId", getParentVersionId())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
