/**
 *@Generated by sagacity-quickvo 5.0
 */
package cn.pojo.atv;

import java.io.Serializable;
import cn.orm.sqltoy.config.annotation.Entity;
import cn.orm.sqltoy.config.annotation.Id;
import cn.orm.sqltoy.config.annotation.Column;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.experimental.Accessors;
import java.time.LocalDateTime;

/**
 * @project sqltoy-quickstart
 * @author BJTU
 * @version 1.0.0 
 */
@Schema(name="SysDepart",description="组织机构表")
@Data
@Accessors(chain = true)
@Entity(tableName="sys_depart",comment="组织机构表",pk_constraint="PRIMARY")
public class SysDepart implements Serializable {
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 4617869637928783178L;
/*---begin-auto-generate-don't-update-this-area--*/	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="deptId",description="ID",nullable=false)
	@Id(strategy="generator",generator="cn.orm.sqltoy.plugins.id.impl.DefaultIdGenerator")
	@Column(name="dept_id",comment="ID",length=32L,type=java.sql.Types.VARCHAR,nullable=false)
	private String deptId;
	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="parentId",description="父机构ID",nullable=true)
	@Column(name="parent_id",comment="父机构ID",length=32L,type=java.sql.Types.VARCHAR,nullable=true)
	private String parentId;
	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="departName",description="机构/部门名称",nullable=false)
	@Column(name="depart_name",comment="机构/部门名称",length=100L,type=java.sql.Types.VARCHAR,nullable=false)
	private String departName;
	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="departNameEn",description="英文名",nullable=true)
	@Column(name="depart_name_en",comment="英文名",length=500L,type=java.sql.Types.VARCHAR,nullable=true)
	private String departNameEn;
	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="departNameAbbr",description="缩写",nullable=true)
	@Column(name="depart_name_abbr",comment="缩写",length=500L,type=java.sql.Types.VARCHAR,nullable=true)
	private String departNameAbbr;
	
	/**
	 * jdbcType:INT
	 */
	@Schema(name="departOrder",description="排序",nullable=true)
	@Column(name="depart_order",comment="排序",length=10L,defaultValue="0",type=java.sql.Types.INTEGER,nullable=true)
	private Integer departOrder;
	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="description",description="描述",nullable=true)
	@Column(name="description",comment="描述",length=500L,type=java.sql.Types.VARCHAR,nullable=true)
	private String description;
	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="orgCategory",description="机构类别 1组织机构，2岗位",nullable=false)
	@Column(name="org_category",comment="机构类别 1组织机构，2岗位",length=10L,defaultValue="1",type=java.sql.Types.VARCHAR,nullable=false)
	private String orgCategory;
	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="orgType",description="机构类型 1一级部门 2子部门",nullable=true)
	@Column(name="org_type",comment="机构类型 1一级部门 2子部门",length=10L,type=java.sql.Types.VARCHAR,nullable=true)
	private String orgType;
	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="orgCode",description="机构编码",nullable=false)
	@Column(name="org_code",comment="机构编码",length=64L,type=java.sql.Types.VARCHAR,nullable=false)
	private String orgCode;
	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="mobile",description="手机号",nullable=true)
	@Column(name="mobile",comment="手机号",length=32L,type=java.sql.Types.VARCHAR,nullable=true)
	private String mobile;
	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="fax",description="传真",nullable=true)
	@Column(name="fax",comment="传真",length=32L,type=java.sql.Types.VARCHAR,nullable=true)
	private String fax;
	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="address",description="地址",nullable=true)
	@Column(name="address",comment="地址",length=100L,type=java.sql.Types.VARCHAR,nullable=true)
	private String address;
	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="memo",description="备注",nullable=true)
	@Column(name="memo",comment="备注",length=500L,type=java.sql.Types.VARCHAR,nullable=true)
	private String memo;
	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="status",description="状态（1启用，0不启用）",nullable=true)
	@Column(name="status",comment="状态（1启用，0不启用）",length=1L,type=java.sql.Types.VARCHAR,nullable=true)
	private String status;
	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="delFlag",description="删除状态（0，正常，1已删除）",nullable=true)
	@Column(name="del_flag",comment="删除状态（0，正常，1已删除）",length=1L,type=java.sql.Types.VARCHAR,nullable=true)
	private String delFlag;
	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="createBy",description="创建人",nullable=true)
	@Column(name="create_by",comment="创建人",length=32L,type=java.sql.Types.VARCHAR,nullable=true)
	private String createBy;
	
	/**
	 * jdbcType:DATETIME
	 */
	@Schema(name="createTime",description="创建日期",nullable=true)
	@Column(name="create_time",comment="创建日期",length=19L,type=java.sql.Types.DATE,nullable=true)
	private LocalDateTime createTime;
	
	/**
	 * jdbcType:VARCHAR
	 */
	@Schema(name="updateBy",description="更新人",nullable=true)
	@Column(name="update_by",comment="更新人",length=32L,type=java.sql.Types.VARCHAR,nullable=true)
	private String updateBy;
	
	/**
	 * jdbcType:DATETIME
	 */
	@Schema(name="updateTime",description="更新日期",nullable=true)
	@Column(name="update_time",comment="更新日期",length=19L,type=java.sql.Types.DATE,nullable=true)
	private LocalDateTime updateTime;
	
	/** default constructor */
	public SysDepart() {
	}
	
	/** pk constructor */
	public SysDepart(String deptId)
	{
		this.deptId=deptId;
	}
/*---end-auto-generate-don't-update-this-area--*/
}
