package com.hzs.bonus.detail.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hzs.common.domain.member.detail.CuMemberAwards;
import com.hzs.common.domain.system.config.BdAwards;

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

/**
 * 会员信息-奖衔升级记录 服务类
 */
public interface ICuMemberAwardsService extends IService<CuMemberAwards> {

    /**
     * 重新计算会员的奖衔，根据累计结束后的业绩
     *
     * @param settleDate       结算日
     * @param countryAwardsMap 国家奖衔配置
     * @param settleTableName  结算表
     */
    void calculateCuMemberAwards(String settleDate, Map<String, BdAwards> countryAwardsMap, String settleTableName);

    /**
     * 批量插入奖衔记录
     *
     * @param cuMemberAwardsList 需要插入的奖衔列表
     */
    Integer saveBatchCuMemberAwards(List<CuMemberAwards> cuMemberAwardsList);

    /*
     * 根据结算表更新奖衔
     **/
    void updateCuMemberAwardsExamine(Date currentDate, Integer period);

}
