/**
* 文件：AreaEntity.java
* 版本：1.0.0
* 日期：
* Copyright &reg; 
* All right reserved.
*/

package com.mortals.xhx.base.system.area.model;

import java.util.Date;

import com.mortals.framework.model.BaseEntityLong;

/**
 * <p>Title: 区域信息</p>
 * <p>Description: AreaEntity  </p>
 * <p>Copyright: Copyright &reg;  </p>
 * <p>Company: </p>
 * @author 
 * @version 1.0.0
 */
public class AreaEntity extends BaseEntityLong{
	private static final long serialVersionUID = 1556594630661L;
	
	/** 上级区域ID */
	private Long parentId;

	/** 区域名称 */
	private String name;

	/** 区域级别，按所处树的节点层次 */
	private Integer level;

	/** 区域编码，按全国省市编码 */
	private String code;

	/** 区域负责人 */
	private String contactsPeople;

	/** 区域负责人电话 */
	private String contactsMobile;

	/** 子区域数量，默认0 */
	private Integer childSize;

	/** 子区域的最大ID，默认0 */
	private Integer maxChildId;

	/** 状态，0停用，1启用，默认1 */
	private Integer status;

	/** 描述 */
	private String remark;

	/** 创建时间 */
	private Date createTime;

	/** 更新时间 */
	private Date updateTime;

	/** 创建用户ID */
	private Long createUserId;

	/** 创建用户名称 */
	private String createUserName;


	public AreaEntity(){
		
	}
	/**
	 * 获取 上级区域ID
	 * @return parentId
	 */
	public Long getParentId(){
		return this.parentId;
	}

	/**
	 * 设置 上级区域ID
	 * @param parentId
	 */
	public void setParentId(Long parentId){
		this.parentId = parentId;
	}

	/**
	 * 获取 区域名称
	 * @return name
	 */
	public String getName(){
		return this.name;
	}

	/**
	 * 设置 区域名称
	 * @param name
	 */
	public void setName(String name){
		this.name = name;
	}

	/**
	 * 获取 区域级别，按所处树的节点层次
	 * @return level
	 */
	public Integer getLevel(){
		return this.level;
	}

	/**
	 * 设置 区域级别，按所处树的节点层次
	 * @param level
	 */
	public void setLevel(Integer level){
		this.level = level;
	}

	/**
	 * 获取 区域编码，按全国省市编码
	 * @return code
	 */
	public String getCode(){
		return this.code;
	}

	/**
	 * 设置 区域编码，按全国省市编码
	 * @param code
	 */
	public void setCode(String code){
		this.code = code;
	}

	/**
	 * 获取 区域负责人
	 * @return contactsPeople
	 */
	public String getContactsPeople(){
		return this.contactsPeople;
	}

	/**
	 * 设置 区域负责人
	 * @param contactsPeople
	 */
	public void setContactsPeople(String contactsPeople){
		this.contactsPeople = contactsPeople;
	}

	/**
	 * 获取 区域负责人电话
	 * @return contactsMobile
	 */
	public String getContactsMobile(){
		return this.contactsMobile;
	}

	/**
	 * 设置 区域负责人电话
	 * @param contactsMobile
	 */
	public void setContactsMobile(String contactsMobile){
		this.contactsMobile = contactsMobile;
	}

	/**
	 * 获取 子区域数量，默认0
	 * @return childSize
	 */
	public Integer getChildSize(){
		return this.childSize;
	}

	/**
	 * 设置 子区域数量，默认0
	 * @param childSize
	 */
	public void setChildSize(Integer childSize){
		this.childSize = childSize;
	}

	/**
	 * 获取 子区域的最大ID，默认0
	 * @return maxChildId
	 */
	public Integer getMaxChildId(){
		return this.maxChildId;
	}

	/**
	 * 设置 子区域的最大ID，默认0
	 * @param maxChildId
	 */
	public void setMaxChildId(Integer maxChildId){
		this.maxChildId = maxChildId;
	}

	/**
	 * 获取 状态，0停用，1启用，默认1
	 * @return status
	 */
	public Integer getStatus(){
		return this.status;
	}

	/**
	 * 设置 状态，0停用，1启用，默认1
	 * @param status
	 */
	public void setStatus(Integer status){
		this.status = status;
	}

	/**
	 * 获取 描述
	 * @return remark
	 */
	public String getRemark(){
		return this.remark;
	}

	/**
	 * 设置 描述
	 * @param remark
	 */
	public void setRemark(String remark){
		this.remark = remark;
	}

	/**
	 * 获取 创建时间
	 * @return createTime
	 */
	public Date getCreateTime(){
		return this.createTime;
	}

	/**
	 * 设置 创建时间
	 * @param createTime
	 */
	public void setCreateTime(Date createTime){
		this.createTime = createTime;
	}

	/**
	 * 获取 更新时间
	 * @return updateTime
	 */
	public Date getUpdateTime(){
		return this.updateTime;
	}

	/**
	 * 设置 更新时间
	 * @param updateTime
	 */
	public void setUpdateTime(Date updateTime){
		this.updateTime = updateTime;
	}

	/**
	 * 获取 创建用户ID
	 * @return createUserId
	 */
	public Long getCreateUserId(){
		return this.createUserId;
	}

	/**
	 * 设置 创建用户ID
	 * @param createUserId
	 */
	public void setCreateUserId(Long createUserId){
		this.createUserId = createUserId;
	}

	/**
	 * 获取 创建用户名称
	 * @return createUserName
	 */
	public String getCreateUserName(){
		return this.createUserName;
	}

	/**
	 * 设置 创建用户名称
	 * @param createUserName
	 */
	public void setCreateUserName(String createUserName){
		this.createUserName = createUserName;
	}


	@Override
	public int hashCode() {
		return this.getId().hashCode();
	}
	@Override
	public boolean equals(Object obj) {
		if (obj == null)
			return false;
		if (obj instanceof AreaEntity) {
			AreaEntity tmp = (AreaEntity) obj;
			if (this.getId().longValue() == tmp.getId().longValue()) {
				return true;
			}
		}
		return false;
	}
	public String toString(){
		StringBuilder sb = new StringBuilder("");
		sb.append("id:").append(getId())
		  .append(",parentId:").append(getParentId())
		  .append(",name:").append(getName())
		  .append(",level:").append(getLevel())
		  .append(",code:").append(getCode())
		  .append(",contactsPeople:").append(getContactsPeople())
		  .append(",contactsMobile:").append(getContactsMobile())
		  .append(",childSize:").append(getChildSize())
		  .append(",maxChildId:").append(getMaxChildId())
		  .append(",status:").append(getStatus())
		  .append(",remark:").append(getRemark())
		  .append(",createTime:").append(getCreateTime())
		  .append(",updateTime:").append(getUpdateTime())
		  .append(",createUserId:").append(getCreateUserId())
		  .append(",createUserName:").append(getCreateUserName());
		return sb.toString();
	}
	public void initAttrValue(){
		this.parentId = null;
		this.name = null;
		this.level = null;
		this.code = null;
		this.contactsPeople = null;
		this.contactsMobile = null;
		this.childSize = 0;
		this.maxChildId = 0;
		this.status = 1;
		this.remark = null;
		this.createTime = null;
		this.updateTime = null;
		this.createUserId = null;
		this.createUserName = null;
	}
}