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

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;

/**
 * @author zhouhanwei
 * @create 2023/3/20 15:21
 */
@EqualsAndHashCode
@ApiModel()
@Data
public class PropertySpecialPeopleInfoUpdateDTO {

    /**
     * id
     */
    @ApiModelProperty(name = "id", value = "id")
    @NotNull(message = "id不能为空")
    private Long id;
    /**
     * 名字
     */
    @ApiModelProperty(name = "userName", value = "名字")
    @NotBlank(message = "人员名称不能为空")
    private String userName;
    /**
     * 人脸图片路径
     */
    @ApiModelProperty(name = "faceImgSrc", value = "人脸图片路径")
    @NotBlank(message = "人脸图片路径不能为空")
    private String faceImgSrc;
    /**
     * 性别
     */
    @ApiModelProperty(name = "sex", value = "性别")
    private String sex;
    /**
     * 身份ID
     */
    @ApiModelProperty(name = "idCard", value = "身份ID")
    private String idCard;
    /**
     * 联系方式
     */
    @ApiModelProperty(name = "phone", value = "联系方式")
    @NotBlank(message = "联系方式不能为空")
    private String phone;
    /**
     * 项目id
     */
    @ApiModelProperty(name = "projectId", value = "项目id")
    @NotNull(message = "项目id不能为空")
    private Long projectId;
    /**
     * 证件类型
     */
    @ApiModelProperty(name = "idType", value = "证件类型")
    private String idType;
    /**
     * 证件照片
     */
    @ApiModelProperty(name = "idPhoto", value = "证件照片")
    private String idPhoto;

    /**
     * 备注信息
     */
    @ApiModelProperty(name = "remark", value = "备注信息")
    private String remark;

    /**
     * 证件起始日期
     */
    @ApiModelProperty(name = "idStartDate", value = "证件起始日期")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date idStartDate;
    /**
     * 证件结束日期
     */
    @ApiModelProperty(name = "idEndDate", value = "证件结束日期")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date idEndDate;

    /**
     * 人员标签
     */
    @ApiModelProperty(name = "personTag", value = "人员标签")
    private String personTag;

    /**
     * 人员类型（7.物业管理8.物业人员9.安保人员10.保洁人员11.维修人员业管理12.其他)
     */
    @ApiModelProperty(name = "peopleType", value = "人员类型（7.物业管理8.物业人员9.安保人员10.保洁人员11.维修人员业管理12.其他)")
    @NotNull(message = "人员类型不能为空")
    private Integer peopleType;
    /**
     * 其他附件照片
     */
    @ApiModelProperty(name = "otherImgSrc", value = "其他附件照片")
    private String otherImgSrc;
    /**
     * 登记房源id
     */
    @ApiModelProperty(name = "houseId", value = "登记房源id")
    private Long houseId;

}
