package com.red.circle.other.infra.database.rds.entity.props;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 道具券实体
 *
 * @author system
 * @date 2025-11-05
 */
@Data
@TableName("prop_coupon")
public class PropCouponDO {

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

    /**
     * 券编号（唯一标识）
     */
    private String couponNo;

    /**
     * 当前持有人ID
     */
    private Long userId;

    /**
     * 券类型（1头像框 2座驾 3VIP 4聊天气泡 5主题 6资料卡 7飘屏 8徽章 9靓号）
     */
    private Integer couponType;

    /**
     * 对应道具ID
     */
    private Long propId;

    /**
     * 道具名称
     */
    private String propName;

    /**
     * 道具图标
     */
    private String propIcon;

    /**
     * 有效天数
     */
    private Integer validDays;

    /**
     * 道具天数
     */
    private Integer propDays;

    /**
     * 券状态（0未使用 1已使用 2已过期 3已赠送）
     */
    private Integer status;

    /**
     * 来源（1后台赠送 2活动获得 3用户赠送）
     */
    private Integer source;

    /**
     * 过期时间
     */
    private LocalDateTime expireTime;

    /**
     * 使用时间
     */
    private LocalDateTime useTime;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;
}