package com.yuchen.saas.park.api.dto.people;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.nest.springwrap.core.mp.support.Query;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.util.Date;

/**
 * @author zhouhanwei
 * @create 2023/3/20 15:21
 */
@ApiModel()
@Data
public class ExternalPeopleInfoPageDTO extends Query {


    /**
     * 项目id
     */
    @ApiModelProperty(name = "projectId", value = "项目id")
    @NotNull(message = "项目id不能为空")
    private Long projectId;

    /**
     * 楼栋id
     */
    @ApiModelProperty(name = "buildingId", value = "楼栋id")
    private Long buildingId;
    /**
     * 单元id
     */
    @ApiModelProperty(name = "unitId", value = "单元id")
    private Long unitId;
    /**
     * 房源id
     */
    @ApiModelProperty(name = "houseId", value = "房源id")
    private Long houseId;


    /**
     * 人员类型（14.家政人员15.装修人员)
     */
    @ApiModelProperty(name = "peopleType", value = "人员类型（14.家政人员15.装修人员)")
    @NotNull(message = "人员类型不能为空")
    @Min(value = 14,message = "人员类型有误")
    @Max(value = 15,message = "人员类型有误")
    private Integer peopleType;

    /**
     * 名字
     */
    @ApiModelProperty(name = "userName", value = "名字")
    private String userName;


    /**
     * 性别
     */
    @ApiModelProperty(name = "sex", value = "性别")
    private String sex;

    /**
     * 身份ID
     */
    @ApiModelProperty(name = "idCard", value = "身份ID")
    private String idCard;
    /**
     * 联系方式
     */
    @ApiModelProperty(name = "phone", value = "联系方式")
    private String phone;

    /**
     * 证件类型
     */
    @ApiModelProperty(name = "idType", value = "证件类型")
    private String idType;




    /**
     * 注册开始时间
     */
    @ApiModelProperty(name = "registerStartTime", value = "注册开始时间")
    private String registerStartTime;


    /**
     * 注册结束时间
     */
    @ApiModelProperty(name = "registerEndTime", value = "注册结束时间")
    private String registerEndTime;
    /**
     * 认证状态1:待认证2：已通过3：已反驳
     */
    @ApiModelProperty(name = "certificationStatus", value = "认证状态1:待认证2：已通过3：已反驳")
    private Integer certificationStatus;

    /**
     * 生效状态（1未生效 2：生效中）
     */
    @ApiModelProperty(name = "effectiveStatus", value = "生效状态（1未生效 2：生效中）")
    private Integer effectiveStatus;
}
