package com.jeesharp.business.modules.member.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.jeesharp.framework.mybatis.core.dataobject.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 积分发放幂等记录实体，映射 {@code app_member_points_grant_record}。
 *
 * @author jeesharp
 * @since 2026-06-23
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("app_member_points_grant_record")
@Schema(description = "会员积分发放幂等记录")
public class MemberPointsGrantRecord extends BaseEntity<MemberPointsGrantRecord> {

    @Schema(description = "会员ID")
    private String memberId;

    @Schema(description = "场景编码")
    private String sceneCode;

    @Schema(description = "业务幂等键")
    private String bizId;

    @Schema(description = "业务编号")
    private String bizNo;

    @Schema(description = "业务描述")
    private String bizDesc;

    @Schema(description = "命中规则ID")
    private String ruleId;

    @Schema(description = "命中规则名称")
    private String ruleName;

    @Schema(description = "实际发放积分")
    private Integer points;

    @Schema(description = "积分流水ID")
    private String pointsLogId;

    @Schema(description = "是否已冲正：0-否 1-是")
    private Integer revoked;
}
