package com.hzs.bonus.member.service;

import com.hzs.bonus.member.param.MemberActivityParam;
import com.hzs.bonus.member.vo.MemberActivityDetailVO;
import com.hzs.bonus.member.vo.MemberActivityVO;
import com.hzs.common.domain.member.ext.CuMemberSettleExt;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @description: 会员活动数据查询
 * @author: sui q
 * @time: 2024/7/9 10:05
 * @classname: ICuMemberActivity
 * @package_name: com.hzs.bonus.member.service
 * version 1.0.0
 */
public interface ICuMemberActivity {

    /*
     * @description: 不查询推荐人的,推荐人数量或者推荐业绩为空
     * @author: sui q
     * @date: 2024/7/9 10:50
     * @param: null null
     **/
    List<MemberActivityVO> queryCuMemberActivityVO(String settleTable, MemberActivityParam memberActivityParam);

    /*
     * @description: 不查询推荐人的
     * @author: sui q
     * @date: 2024/7/9 10:50
     * @param: null null
     **/
    List<MemberActivityVO> queryRecCuMemberActivityVO(String settleTable, MemberActivityParam memberActivityParam);

    /*
     * @description: 查询明细
     * @author: sui q
     * @date: 2024/7/9 13:41
     * @param: null null
     **/
    Map<Long, List<MemberActivityDetailVO>> queryCuMemberActivityDetailVO(String beforeSettleTable, String settleTable, List<MemberActivityVO> memberActivityVoList, MemberActivityParam memberActivityParam);

    /*
     * @description: 查询明细
     * @author: sui q
     * @date: 2024/7/9 13:41
     * @param: null null
     **/
    Map<Long, List<MemberActivityDetailVO>> queryCouCuMemberActivityDetailVO(String beforeSettleTable, String settleTable, List<MemberActivityVO> memberActivityVoList, MemberActivityParam memberActivityParam);
}
