package com.datacenter.job.vo;

import lombok.Data;

import java.math.BigDecimal;

/**
 * 直邀体验金发放候选数据
 * 由主查询返回，包含一条"可触发发放"的合约仓位及对应产品信息
 */
@Data
public class InviteGrantCandidateVo {

    /** 合约仓位ID（触发来源） */
    private Long positionId;

    /** 开仓会员ID（被邀人） */
    private Long memberId;

    /** 邀请人ID（接收体验金的人） */
    private Long inviterId;

    /** 邀请人邮箱（用于发放成功后邮件通知） */
    private String inviterEmail;

    /** 仓位开仓价值（USDT），= total_position * open_price */
    private BigDecimal openValue;

    /** 实际持仓分钟数 */
    private Integer holdMinutes;

    /** 交易对符号，如 BTC/USDT */
    private String coinSymbol;

    // -------- 产品信息快照 --------

    private Long productId;

    /** 产品名称快照 */
    private String productName;

    /** 体验金面额（USDT） */
    private BigDecimal amount;

    /** 单张盈利上限（USDT） */
    private BigDecimal maxProfitPerCard;

    /** 有效期（天） */
    private Integer validityDays;

    /** 发放总量（0=不限） */
    private Integer totalQuantity;

    /** 已发放张数 */
    private Integer issuedCount;

    /** 单人领取上限 */
    private Integer perUserLimit;

    /** 杠杆倍数（来自产品交易对配置） */
    private Integer leverage;

    /** 被邀人注册 IP（用于写入 experience_gift_record.client_ip） */
    private String clientIp;
}
