package com.unis.crk.basic.entity;

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import java.util.List;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 数据字典大类
 * </p>
 *
 * @author TangSong
 * @since 2021-08-04
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="BasicEnum对象", description="数据字典大类")
public class BasicEnum implements Serializable {

private static final long serialVersionUID=1L;

    @ApiModelProperty(value = "ID")
    @TableId(value = "enumId", type = IdType.AUTO)
    private String enumId;

    @ApiModelProperty(value = "枚举编码")
    @TableField("enumCode")
    private String enumCode;

    @ApiModelProperty(value = "枚举名称")
    @TableField("enumName")
    private String enumName;

    @ApiModelProperty(value = "国标编码")
    @TableField("gbCode")
    private String gbCode;

    @ApiModelProperty(value = "父级ID")
    @TableField("parentId")
    private String parentId;

    @ApiModelProperty(value = "枚举根节点Id")
    @TableField(exist = false)
    private String enumRootId;

    @ApiModelProperty(value = "创建时间")
    @TableField("createDate")
    private Date createDate;

    @ApiModelProperty(value = "备注")
    @TableField("remark")
    private String remark;

    @ApiModelProperty(value = "删除状态(1.正常，2.删除)")
    @TableField("delFlag")
    private Integer delFlag;

    @ApiModelProperty(value = "条目创建人")
    @TableField(exist =false)
    private String crearer;

    @ApiModelProperty(value = "最后一次编辑时间")
    @TableField(value = "updatetime",strategy = FieldStrategy.IGNORED)
    private Date updatetime;

    @ApiModelProperty(value = "子节点")
    @TableField(exist = false)
    private List<BasicEnum> children;

    @ApiModelProperty(value = "是否有子节点")
    @TableField(exist = false)
    Boolean subset;

}
