package com.datacenter.service;

import com.datacenter.job.vo.InviteGrantCandidateVo;

public interface ExperienceGiftInviteGrantService {

    /**
     * 扫描满足条件的合约仓位，向邀请人发放直邀体验金。
     *
     * @return 本次实际发放的张数
     */
    int checkAndGrantInviteGifts();

    /**
     * 对单条候选记录执行发放（独立事务）。
     * 通过 Spring 代理调用以保证事务生效；去重日志唯一键冲突时抛出异常由调用方处理。
     */
    /**
     * @return true 表示本次实际完成了发放，false 表示因各种限制跳过
     */
    boolean processGrant(InviteGrantCandidateVo candidate);
}
