package com.bootdo.datasend.dianxin.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;

/**
 * 人脸门禁记录表(BaseDoorRecord)Domain
 *
 * @author makejava
 * @since 2024-11-21 16:15:21
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName(value = "base_door_record")
public class BaseDoorRecord {

    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 小区编码
     */
    private String placeCode;

    /**
     * 小区名称
     */
    private String placeName;

    /**
     * 设备编码
     */
    private String deviceCode;

    /**
     * 设备名称
     */
    private String deviceName;

    /**
     * 关联视频监控编码
     */
    private String gbsChannelNo;

    /**
     * 设备安装位置
     */
    private String deviceAddress;

    /**
     * 方位
     */
    private Integer orientation;

    /**
     * 摄像头ip
     */
    private String cameraIp;

    /**
     * 姓名
     */
    private String userName;

    /**
     * 证件类型
     */
    private Integer identityType;

    /**
     * 联系电话
     */
    private String phone;

    /**
     * 证件号码
     */
    private String idcard;

    /**
     * 进出方向
     */
    private Integer direction;

    /**
     * 人脸图
     */
    private String personPic;

    /**
     * 记录唯一标识
     */
    private String recordId;

    /**
     * 数据来源唯一ID
     */
    private String sourceId;

    /**
     * 人脸小图唯一ID
     */
    private String personImageId;

    /**
     * 卡号/人脸编码
     */
    private String cardno;

    /**
     * 门禁类型
     */
    private Integer cardType;

    /**
     * 开门结果
     */
    private String openResult;

    /**
     * 健康码类型
     */
    private Integer healthCodeType;

    /**
     * 行程码类型
     */
    private Integer travelCodeType;

    /**
     * 行程码记录
     */
    private String travelCodeRecord;

    /**
     * 核酸检测结果
     */
    private Integer nucleicResultType;

    /**
     * 开门时间
     */
    private Long passTime;

    /**
     * 开门时间（分区）
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date partitionField;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createtimeV;

    /**
     * 创建者
     */
    private Integer createbyV;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updatetimeV;

    /**
     * 更新者
     */
    private Integer updatebyV;

    /**
     * 是否发送
     */
    private Integer isSend;

}
