package com.yida.data.school.vo.visitor;

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

@ApiModel("访客记录列表信息")
@Data
public class ListVisitorRecordVO {

    private Long id;

    @ApiModelProperty("姓名")
    private String name;

    @ApiModelProperty("身份证号")
    private String idCard;

    @ApiModelProperty("手机号")
    private String mobile;

    @ApiModelProperty("访问事由")
    private String reason;

    @ApiModelProperty("访问事由图片")
    private String reasonPic;

    @ApiModelProperty("预期到访时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm")
    private LocalDateTime appointmentTime;

    @ApiModelProperty("受访人")
    private String staffName;

    private Long staffId;

    @ApiModelProperty(value = "0-待处理，1-同意，2-拒绝，3-已取消")
    private Integer result;

    @ApiModelProperty(value = "0-待访问，1-访问中，2-访问结束，3-已取消")
    private Integer status;

    @ApiModelProperty("拒绝/取消原因")
    private String noReason;

    @ApiModelProperty("进校时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm")
    private LocalDateTime inSchoolTime;

    @ApiModelProperty("进校体温")
    private Double temp;

    @ApiModelProperty("出校时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm")
    private LocalDateTime outSchoolTime;

    @ApiModelProperty("访问申请时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createDate;

    @ApiModelProperty("保安名称")
    private String inSchoolSecurityName;

    private Long inSchoolSecurityId;

    @ApiModelProperty("保安名称")
    private String outSchoolSecurityName;

    private Long outSchoolSecurityId;

    private String staffMobile;

    private Long schoolId;
}
