package com.ylx.point.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.ylx.common.annotation.Excel;
import com.ylx.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;

/**
 * 用户签到记录对象 point_user_sign_log
 *
 * @author wzj
 * @date 2026-03-25
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class PointUserSignLog extends BaseEntity {
    private static final long serialVersionUID = -3042740595606704854L;

    /**
     * 主键
     */
    private Long id;

    /**
     * 用户ID
     */
    @Excel(name = "用户的openID")
    private String openId;

    /**
     * 签到活动ID（对应point_activity.id）
     */
    @Excel(name = "签到活动ID", readConverterExp = "对=应point_activity.id")
    private Long activityId;

    /**
     * 任务ID（对应point_sign_task.id）
     */
    @Excel(name = "任务ID", readConverterExp = "对=应point_sign_task.id")
    private Long taskId;

    /**
     * 签到日期（yyyy-MM-dd）
     */
    @Excel(name = "签到日期", readConverterExp = "yyyy-MM-dd")
    private Date signDate;

    /**
     * 本次签到后连续天数
     */
    @Excel(name = "本次签到后连续天数")
    private Integer continuousDays;

    /**
     * 本次获得积分
     */
    @Excel(name = "本次获得积分")
    private Integer points;

    /**
     * 是否补签：0=否,1=是
     */
    @Excel(name = "是否补签：0=否,1=是")
    private Integer isMakeUp;

    @TableField(exist = false)
    private String createBy;

    @TableField(exist = false)
    private String updateBy;

    @TableField(exist = false)
    private Date createTime;

    @TableField(exist = false)
    private Date updateTime;

}
