package cn.novalon.gym.manage.checkIn.vo;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 * 签到记录VO
 *
 * @author 付嘉
 * @date 2026-06-08
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SignInRecordVO {

    /**
     * 签到记录ID
     */
    private Long id;

    /**
     * 会员ID
     */
    private Long memberId;

    /**
     * 会员卡ID
     */
    private Long memberCardId;

    /**
     * 签到时间
     */
    private LocalDateTime signInTime;

    /**
     * 签到类型：QR_CODE-扫码签到，MANUAL-手动签到，FACE-人脸识别
     */
    private String signInType;

    /**
     * 签到状态：SUCCESS-成功，FAILED-失败
     */
    private String signInStatus;

    /**
     * 失败原因
     */
    private String failReason;

    /**
     * 签到来源：MINI_PROGRAM-小程序扫码，PC_BACKEND-后台管理端
     */
    private String source;

    /**
     * 创建时间
     */
    private LocalDateTime createdAt;
}