package com.yunfeiyun.agmp.common.core.domain.entity;

import com.yunfeiyun.agmp.common.core.domain.BaseEntity;
import com.yunfeiyun.agmp.common.annotation.Excel;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;

/**
 * 字典数据表 SysDict
 * 
 * @author 杨晓辉
 */
public class SysDictData extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 字典标识 */
    @Excel(name = "字典标识")
    private String dictId;

    /** 字典排序 */
    @Excel(name = "字典排序", cellType = Excel.ColumnType.NUMERIC)
    private Long dictSeq;

    /** 字典名称 */
    @Excel(name = "字典名称")
    private String dictName;

    /** 字典数值 */
    @Excel(name = "字典数值")
    private String dictValue;

    /** 字典类型编码 */
    @Excel(name = "字典类型编码")
    private String dicttypeCode;

    /** 状态（0正常 1停用） */
    @Excel(name = "状态", readConverterExp = "0=正常,1=停用")
    private String dictAvlstatus;


    /** 字典创建者 */
    @Excel(name = "字典创建者")
    private String dictCreator;

    /** 字典创建时间 */
    @Excel(name = "字典创建时间")
    private String dictCreateddate;

    /** 字典更新者 */
    @Excel(name = "字典更新者")
    private String dictModifier;

    /** 字典更新时间 */
    @Excel(name = "字典更新时间")
    private String dictModifieddate;

    /** 字典备注 */
    @Excel(name = "字典备注")
    private String dictRemark;

    /** 字典名称，查询时等于使用 */
    private String dictNameEq;


    public String getDictId()
    {
        return dictId;
    }

    public void setDictId(String dictId)
    {
        this.dictId = dictId;
    }

    public Long getDictSeq()
    {
        return dictSeq;
    }

    public void setDictSeq(Long dictSeq)
    {
        this.dictSeq = dictSeq;
    }

    @NotBlank(message = "字典标签不能为空")
    @Size(min = 0, max = 100, message = "字典标签长度不能超过100个字符")
    public String getDictName()
    {
        return dictName;
    }

    public void setDictName(String dictName)
    {
        this.dictName = dictName;
    }

    @NotBlank(message = "字典键值不能为空")
    @Size(min = 0, max = 100, message = "字典键值长度不能超过100个字符")
    public String getDictValue()
    {
        return dictValue;
    }

    public void setDictValue(String dictValue)
    {
        this.dictValue = dictValue;
    }

    @NotBlank(message = "字典类型不能为空")
    @Size(min = 0, max = 100, message = "字典类型长度不能超过100个字符")
    public String getDicttypeCode()
    {
        return dicttypeCode;
    }

    public void setDicttypeCode(String dicttypeCode)
    {
        this.dicttypeCode = dicttypeCode;
    }


    public String getDictAvlstatus()
    {
        return dictAvlstatus;
    }

    public void setDictAvlstatus(String dictAvlstatus)
    {
        this.dictAvlstatus = dictAvlstatus;
    }


    public String getDictCreator()
    {
        return dictCreator;
    }

    public void setDictCreator(String dictCreator)
    {
        this.dictCreator = dictCreator;
    }

    public String getDictCreateddate()
    {
        return dictCreateddate;
    }

    public void setDictCreateddate(String dictCreateddate)
    {
        this.dictCreateddate = dictCreateddate;
    }

    public String getDictModifier()
    {
        return dictModifier;
    }

    public void setDictModifier(String dictModifier)
    {
        this.dictModifier = dictModifier;
    }

    public String getDictModifieddate()
    {
        return dictModifieddate;
    }

    public void setDictModifieddate(String dictModifieddate)
    {
        this.dictModifieddate = dictModifieddate;
    }

    public String getDictRemark()
    {
        return dictRemark;
    }

    public void setDictRemark(String dictRemark)
    {
        this.dictRemark = dictRemark;
    }

    public String getDictNameEq() {
        return dictNameEq;
    }

    public void setDictNameEq(String dictNameEq) {
        this.dictNameEq = dictNameEq;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("dictId", getDictId())
            .append("dictSeq", getDictSeq())
            .append("dictName", getDictName())
            .append("dictValue", getDictValue())
            .append("dicttypeCode", getDicttypeCode())
            .append("dictAvlstatus", getDictAvlstatus())
            .append("dictCreator", getDictCreator())
            .append("dictCreatedate", getDictCreateddate())
            .append("dictModifier", getDictModifier())
            .append("dictModifieddate", getDictModifieddate())
            .append("dictRemark", getDictRemark())
            .append("dictNameEq", getDictNameEq())
            .toString();
    }
}
