package com.seer.teach.pay.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.seer.teach.common.entity.BaseEntity;
import com.seer.teach.pay.enums.MerchantRevenueUsageStatusEnum;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import org.apache.ibatis.type.JdbcType;

import java.math.BigDecimal;

/**
 * <p>
 * 收益使用记录表（支持拆分提现）
 * </p>
 *
 * @author ZS
 * @since 2025-09-27
 */
@Getter
@Setter
@ToString
@TableName("pay_merchant_revenue_usage")
public class PayMerchantRevenueUsageEntity extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 关联的收益流水ID
     */
    @TableField("revenue_detail_id")
    private Integer revenueDetailId;

    /**
     * 提现申请单ID
     */
    @TableField("withdrawal_apply_id")
    private String withdrawalApplyId;

    /**
     * 本次使用的收益金额
     */
    @TableField("used_amount")
    private BigDecimal usedAmount;

    /**
     * 使用前可用余额（快照）
     */
    @TableField("available_amount_before")
    private BigDecimal availableAmountBefore;

    /**
     * 使用后可用余额（快照）
     */
    @TableField("available_amount_after")
    private BigDecimal availableAmountAfter;

    /**
     * 状态： SUCCESS-成功, CANCELLED-取消
     */
    @TableField(value = "status")
    private String status;

    /**
     * 备注
     */
    @TableField("remark")
    private String remark;
}