/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.security.ht.entity.basic;

import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

/**
 * 基础信息-组织机构实体类
 *
 * @author BladeX
 * @since 2022-03-07
 */
@Data
@TableName("T_DEPARTMENT")
@ApiModel(value = "Department对象", description = "基础信息-组织机构")
public class Department implements Serializable {

	private static final long serialVersionUID = 1L;
	/**
	 * 创建人
	 */
//	@ExcelIgnore
	@ApiModelProperty(value = "创建人")
	@TableField(fill = FieldFill.INSERT)
	private String createdBy;
	/**
	 * 创建时间
	 */
//	@ExcelIgnore
	@ApiModelProperty(value = "创建时间")
	@TableField(fill = FieldFill.INSERT)
	private Date createdTime;
	/**
	 * 更新人
	 */
//	@ExcelIgnore
	@ApiModelProperty(value = "更新人")
	@TableField(fill = FieldFill.INSERT_UPDATE)
	private String updatedBy;
	/**
	 * 更新时间
	 */
//	@ExcelIgnore
	@ApiModelProperty(value = "更新时间")
	@TableField(fill = FieldFill.INSERT_UPDATE)
	private Date updatedTime;

	/**
	 * ID
	 */
	@ApiModelProperty(value = "ID")
	@TableId("ID")
	private Long id;
	/**
	 * 上级机构id
	 */
	@ApiModelProperty(value = "上级机构id")
	@TableField("PARENT_ID")
	private Long parentId;
	/**
	 * 名称
	 */
	@ApiModelProperty(value = "名称")
	@TableField("DEPT_NAME")
	private String deptName;
	/**
	 * 机构全称
	 */
	@ApiModelProperty(value = "机构全称")
	@TableField("FULL_NAME")
	private String fullName;

	/**
	 * 祖级机构主键
	 */
	@ApiModelProperty(value = "祖级机构主键")
	@TableField("ANCESTORS")
	private String ancestors;
	/**
	 * 机构层级
	 */
	@ApiModelProperty(value = "层级")
	@TableField("DEPT_LEVEL")
	private String deptLevel;
	/**
	 * 营业机构概况
	 */
	@ApiModelProperty(value = "营业机构概况")
	@TableField("SUMMARY")
	private String summary;
	/**
	 * 地址
	 */
	@ApiModelProperty(value = "地址")
	@TableField("ADDRESS")
	private String address;
	/**
	 * 毗邻单位东
	 */
	@ApiModelProperty(value = "毗邻单位")
	@TableField("NEIGHBOR_DEPT")
	private String neighborDept;
	/**
	 * 建设时间
	 */
	@ApiModelProperty(value = "建设时间")
	@TableField("CONSTRUCTION_DATE")
	private String constructionDate;
	/**
	 * 开业时间
	 */
	@ApiModelProperty(value = "开业时间")
	@TableField("OPEN_DATE")
	private String openDate;
	/**
	 * 主要负责人
	 */
	@ApiModelProperty(value = "主要负责人")
	@TableField("LEADER")
	private String leader;
	/**
	 * 安全员
	 */
	@ApiModelProperty(value = "安全员")
	@TableField("SAFETY_OFFICER")
	private String safetyOfficer;
	/**
	 * 分管领导
	 */
	@ApiModelProperty(value = "分管领导")
	@TableField("LEADER_IN_CHARGE")
	private String leaderInCharge;
	/**
	 * 人数
	 */
	@ApiModelProperty(value = "人数")
	@TableField("PEOPLE_NUMBER")
	private Integer peopleNumber;
	/**
	 * 逻辑删除标识符;1-删除，0-正常
	 */
	@ApiModelProperty(value = "逻辑删除标识符;0-正常，1-删除")
	@TableField("DEL_FLAG")
	@TableLogic
	private String delFlag;

	/**
	 * 机构号
	 */
	@ApiModelProperty(value = "机构号")
	@TableField("DEPT_NO")
	private String deptNo;
	/**
	 * 设计资料文件地址
	 */
	@ApiModelProperty(value = "设计资料文件地址")
	@TableField("DESIGN_DATA")
	private String designData;
	/**
	 * 建设资料文件地址
	 */
	@ApiModelProperty(value = "建设资料文件地址")
	@TableField("CONSTRUCTION_DATA")
	private String constructionData;
	/**
	 * 验收资料文件地址
	 */
	@ApiModelProperty(value = "验收资料文件地址")
	@TableField("ACCEPTANCE_DATA")
	private String acceptanceData;
	/**
	 * 自助银行类型：1-行内、2-离行
	 */
	@ApiModelProperty(value = "自助银行类型：1-行内、2-离行")
	@TableField("SELF_BANK_TYPE")
	private String selfBankType;

	/**
	 * 机构类型：1-总行、2-分行、3-支行、4-自助银行
	 */
	@ApiModelProperty(value = "机构类型：1-总行、2-分行、3-支行、4-自助银行")
	@TableField("DEPT_CATEGORY")
	private String deptCategory;


	/**
	 * 机构经度
	 */
	@ApiModelProperty(value = "机构经度")
	@TableField("LONGITUDE")
	private String longitude;

	/**
	 * 机构纬度
	 */
	@ApiModelProperty(value = "机构纬度")
	@TableField("LATITUDE")
	private String latitude;
	/**
	 * 机构照片groupName
	 */
	@ApiModelProperty(value = "机构照片groupName")
	@TableField("GROUP_NAME")
	private String groupName;

}
