package com.red.circle.other.app.service.activity;

import com.red.circle.other.app.dto.clientobject.activity.ActivityRewardConfigCO;
import com.red.circle.other.app.dto.clientobject.activity.ClaimRewardResultCO;
import com.red.circle.other.app.dto.cmd.activity.ActivityRewardConfigCmd;
import com.red.circle.other.app.dto.cmd.activity.ClaimActivityRewardCmd;

import java.util.List;

/**
 * 活动奖励配置服务
 */
public interface ActivityRewardConfigService {

    /**
     * 获取活动奖励配置列表
     */
    List<ActivityRewardConfigCO> listRewardConfigs(ActivityRewardConfigCmd cmd);

    /**
     * 领取活动奖励
     */
    ClaimRewardResultCO claimReward(ClaimActivityRewardCmd cmd);

    /**
     * 获取活动奖励配置列表
     */
    List<ActivityRewardConfigCO> listRewardConfigsBadge(ActivityRewardConfigCmd cmd);

    /**
     * 领取活动奖励
     */
    ClaimRewardResultCO claimRewardBadge(ClaimActivityRewardCmd cmd);
}
