package com.inspect.system.base.domain;

import com.inspect.base.core.web.domain.BaseEntity;
import java.util.ArrayList;
import java.util.List;
import javax.validation.constraints.Email;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

public class SysDept extends BaseEntity {
   private static final long serialVersionUID = 1L;
   private Long deptId;
   private Long parentId;
   private String ancestors;
   private String deptName;
   private String orderNum;
   private String leader;
   private String phone;
   private String email;
   private String status;
   private String delFlag;
   private String parentName;
   private List<SysDept> children = new ArrayList();

   public Long getDeptId() {
      return this.deptId;
   }

   public void setDeptId(Long deptId) {
      this.deptId = deptId;
   }

   public Long getParentId() {
      return this.parentId;
   }

   public void setParentId(Long parentId) {
      this.parentId = parentId;
   }

   public String getAncestors() {
      return this.ancestors;
   }

   public void setAncestors(String ancestors) {
      this.ancestors = ancestors;
   }

   @NotBlank(
      message = "部门名称不能为空"
   )
   @Size(
      min = 0,
      max = 30,
      message = "部门名称长度不能超过30个字符"
   )
   public String getDeptName() {
      return this.deptName;
   }

   public void setDeptName(String deptName) {
      this.deptName = deptName;
   }

   @NotBlank(
      message = "显示顺序不能为空"
   )
   public String getOrderNum() {
      return this.orderNum;
   }

   public void setOrderNum(String orderNum) {
      this.orderNum = orderNum;
   }

   public String getLeader() {
      return this.leader;
   }

   public void setLeader(String leader) {
      this.leader = leader;
   }

   @Size(
      min = 0,
      max = 11,
      message = "联系电话长度不能超过11个字符"
   )
   public String getPhone() {
      return this.phone;
   }

   public void setPhone(String phone) {
      this.phone = phone;
   }

   @Email(
      message = "邮箱格式不正确"
   )
   @Size(
      min = 0,
      max = 50,
      message = "邮箱长度不能超过50个字符"
   )
   public String getEmail() {
      return this.email;
   }

   public void setEmail(String email) {
      this.email = email;
   }

   public String getStatus() {
      return this.status;
   }

   public void setStatus(String status) {
      this.status = status;
   }

   public String getDelFlag() {
      return this.delFlag;
   }

   public void setDelFlag(String delFlag) {
      this.delFlag = delFlag;
   }

   public String getParentName() {
      return this.parentName;
   }

   public void setParentName(String parentName) {
      this.parentName = parentName;
   }

   public List<SysDept> getChildren() {
      return this.children;
   }

   public void setChildren(List<SysDept> children) {
      this.children = children;
   }

   public String toString() {
      return (new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)).append("deptId", this.getDeptId()).append("parentId", this.getParentId()).append("ancestors", this.getAncestors()).append("deptName", this.getDeptName()).append("orderNum", this.getOrderNum()).append("leader", this.getLeader()).append("phone", this.getPhone()).append("email", this.getEmail()).append("status", this.getStatus()).append("delFlag", this.getDelFlag()).append("createBy", this.getCreateBy()).append("createTime", this.getCreateTime()).append("updateBy", this.getUpdateBy()).append("updateTime", this.getUpdateTime()).toString();
   }
}
