package com.hzs.bonus.bonus.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hzs.common.domain.member.bonus.CuMemberBonusCoach;
import com.hzs.common.domain.member.ext.CuMemberBonusCoachExt;
import com.hzs.bonus.bonus.param.BonusParam;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 会员奖金-辅导收益明细表 Mapper 接口
 * </p>
 *
 * @author hzs
 * @since 2022-11-15
 */
public interface CuMemberBonusCoachMapper extends BaseMapper<CuMemberBonusCoach> {

    /**
     * 删除会员奖金汇总表
     * @param period 结算期间
     * @return: void
     * @Author: sui q
     * @Date: 2022/12/13 11:54
     */
    void deleteCuMemberBonusCoach(Integer period);

    /**
     * 批量插入会员奖金主表
     * @param cuMemberBonusCoachList 会员奖金
     * @return: void
     * @Author: sui q
     * @Date: 2022/12/13 13:56
     */
    void batchInsertCuMemberBonusCoach(@Param("cuMemberBonusCoachList") List<?> cuMemberBonusCoachList);

    /**
     * 根据查询条件查询固定的奖金明细
     * @param bonusParam 查询条件
     * @return: List<CuMemberBonusDetail>
     * @Author: sui q
     * @Date: 2023/1/14 11:18
     */
    List<CuMemberBonusCoachExt> queryMemberBonusCoachByBonusItems(BonusParam bonusParam);

    /**
     * 根据查询条件查询固定的奖金明细
     * @param bonusParam 查询条件
     * @return: List<CuMemberBonusDetail>
     * @Author: sui q
     * @Date: 2023/1/14 11:18
     */
    List<CuMemberBonusCoachExt> queryMemberBonusCoachByBonusItemsForServer(@Param("bonusParam") BonusParam bonusParam);
}
