package jnpf.model.attendance.vo;

import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

/**
 * 打卡记录vo
 *
 * @author yanwenfu
 * @create 2023-11-24
 */
@NoArgsConstructor
@Data
public class ClockInVo {

    /**
     * 主键
     */
    private String id;

    /**
     * 出勤规则id
     */
    private String ruleId;
    /** 考勤组id */
    private String groupId;
    /**
     * 归属日期
     */
    private Date day;
    /**
     * 用户id
     */
    private String userId;
    /**
     * 打卡id
     */
    private String clockInId;
    /**
     * 打卡时间
     */
    private Date clockInTime;
    /**
     * 有效时间
     */
    private Date effectiveTime;
    /**
     * 审批状态(0: 通过, 1: 审批中, 2: 拒绝)·
     */
    private Integer approvalStatus;
    /**
     * 打卡类型(1: 上班, 2: 下班)
     */
    private Integer clockInType;
    /**
     * 打卡状态(-2: 无需打卡, -1: 缺卡, 1: 正常, 2: 迟到, 3: 早退)
     */
    private Integer clockInStatus;
    /**
     * 打卡种类(1: 普通打卡, 2: 外勤打卡)
     */
    private Integer clockInKind;
    /**
     * 是否缺勤(1: 是, 0: 否)
     */
    private Integer absence;
    /**
     * 操作为缺勤的领导
     */
    private String absenceLeader;
    /**
     * 操作为缺勤的领导名称
     */
    private String absenceLeaderName;
    /**
     * 异常时长(分钟)
     */
    private Integer abnormalMinute;
    /**
     * 是否补卡(1: 是, 0: 否)
     */
    private Integer repaired;
    /**
     * 能否补卡(1: 是, 0: 否)
     */
    private Integer couldRepair;
    /**
     * 审批类型(1: 补卡, 2: 出勤变更, 3: 外勤)
     */
    private Integer applyType;
    /**
     * 审批id
     */
    private String applyId;
    /**
     * 地址
     */
    private String address;
    /**
     * 经度
     */
    private String lng;
    /**
     * 维度
     */
    private String lat;
    /**
     * 设备类型(1: 地点打卡, 2: 考勤机, 3: wifi)
     */
    private Integer deviceType;
    /**
     * 设备id(考勤机id/WiFi id)
     */
    private String deviceId;
    /**
     * 设备名称
     */
    private String deviceName;
    /**
     * 能否更新打卡(1: 能, 0: 不能)
     */
    private Integer updateCheck = 0;

    /** 备注 */
    private String remark;

    /** 关联审批Id */
    private String associationApplyId;
}
