/*
 *      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.springblade.community.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import org.springblade.core.mp.base.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * 小区表，新建小区的时候，小区也要作为一个机构存入到机构表里面，机构的编号就使用当前小区的编号实体类
 *
 * @author BladeX
 * @since 2021-03-29
 */
@Data
@TableName("community_residential")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "Residential对象", description = "小区表，新建小区的时候，小区也要作为一个机构存入到机构表里面，机构的编号就使用当前小区的编号")
public class Residential extends BaseEntity {

	private static final long serialVersionUID = 1L;

	/**
	* 小区名字
	*/
		@ApiModelProperty(value = "小区名字")
		private String name;
	/**
	* 园区id
	*/
		@ApiModelProperty(value = "园区id")
		@JsonSerialize(using= ToStringSerializer.class)
		private Long agencyId;
	/**
	* 园区名称
	*/
		@ApiModelProperty(value = "园区名称")
		private String agencyName;
	/**
	* 省（id）
	*/
		@ApiModelProperty(value = "省（id）")
		private String regionProvince;
	/**
	* 市（id）
	*/
		@ApiModelProperty(value = "市（id）")
		private String regionCity;
	/**
	* 区/县（id）
	*/
		@ApiModelProperty(value = "区/县（id）")
		private String regionArea;

	/**
	 * 街道code
	 */
	@ApiModelProperty(value = "街道code")
	private String regionStreet;
	/**
	* 详细地址
	*/
		@ApiModelProperty(value = "详细地址")
		private String address;
	/**
	* 经度
	*/
		@ApiModelProperty(value = "经度")
		private String longitude;
	/**
	* 纬度
	*/
		@ApiModelProperty(value = "纬度")
		private String latitude;
	/**
	* 楼栋总数
	*/
		@ApiModelProperty(value = "楼栋总数")
		private Integer buildingCount;
	/**
	* 单元总数
	*/
		@ApiModelProperty(value = "单元总数")
		private Integer unitCount;
	/**
	* 楼层总数
	*/
		@ApiModelProperty(value = "楼层总数")
		private Integer floorCount;
	/**
	* 房间总数
	*/
		@ApiModelProperty(value = "房间总数")
		private Integer roomCount;
	/**
	* 住户总数
	*/
		@ApiModelProperty(value = "住户总数")
		private Integer userCount;
	/**
	* 所属物业名称
	*/
		@ApiModelProperty(value = "所属物业id")
		@JsonSerialize(using= ToStringSerializer.class)
		private Long estateId;
//	/**
//	 * 所属物业名称
//	 */
//		@ApiModelProperty(value = "所属物业名称")
//		private Long estateName;
//	/**
//	 * 所属物业电话
//	 */
//		@ApiModelProperty(value = "所属物业电话")
//		private Long estatePhone;
	/**
	 * 负责人名称
	 */
		@ApiModelProperty(value = "负责人名称")
		private String personName;
	/**
	 * 负责人联系方式
	 */
		@ApiModelProperty(value = "负责人联系方式")
		private String personPhone;
	/**
	* 备注
	*/
		@ApiModelProperty(value = "备注")
		private String remark;
	/**
	* 小区图片
	*/
		@ApiModelProperty(value = "小区图片")
		private String pic;
	/**
	* 旧平台id
	*/
		@ApiModelProperty(value = "旧平台id")
		private Long oldId;
	/**
	* 机构路径
	*/
		@ApiModelProperty(value = "机构路径")
		private String orgPosition;

	/**
	 * 租户id
	 */
	@ApiModelProperty(value = "租户id")
	private String tenantId;

	@ApiModelProperty(value = "访客记录是否需要审核才能同行（0不需要，1-需要）")
	private Integer doorNeedAudit;

	@ApiModelProperty(value = "第三方小区id")
	private String thirdResidentialId;

	/**
	 * 单体应用的主键
	 */
	@ApiModelProperty(value = "单体应用的主键")
	private Long gridId;
	@ApiModelProperty(value = "边界")
	private String boundaryPath;

}
