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 lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import java.math.BigDecimal;

/**
 * <p>
 * 用户可提现余额表
 * </p>
 *
 * @author ZS
 * @since 2025-09-22
 */
@Getter
@Setter
@ToString
@TableName("pay_merchant_account")
public class PayMerchantAccountEntity extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 用户ID
     */
    @TableField("user_id")
    private Long userId;

    /**
     * 可提现余额（分：已结算佣金-已提现-冻结金额）
     */
    @TableField("available_balance")
    private BigDecimal availableBalance;

    /**
     * 冻结余额（分）
     */
    @TableField("frozen_balance")
    private BigDecimal frozenBalance;

    /**
     * 累计已结算佣金（分）
     */
    @TableField("total_settled_amount")
    private BigDecimal totalSettledAmount;

    /**
     * 累计已提现金额（分）
     */
    @TableField("total_withdrawn_amount")
    private BigDecimal totalWithdrawnAmount;

    /**
     * 总金额（分）
     */
    @TableField("total_amount")
    private BigDecimal totalAmount;

    /**
     * 是否被锁定（0：否，1：是）
     */
    @TableField("is_block")
    private Integer isBlock;

    /**
     * 版本号(乐观锁)
     */
    @TableField("version")
    private Integer version;
}