package com.hzs.report.member.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hzs.common.domain.report.member.CuMemberPerk;
import com.hzs.common.domain.report.member.ext.CuMemberPerkExt;
import com.hzs.report.member.param.MemberPerkQueryParam;

import java.util.List;

/**
 * 会员补贴配置 服务类
 *
 * @author zhangjing
 * @since 2024-04-22
 */
public interface ICuMemberPerkService extends IService<CuMemberPerk> {

    /**
     * 补贴配置列表
     *
     * @param param     查询参数
     * @param pkCountry 所属国家
     * @return
     */
    List<CuMemberPerkExt> queryList(MemberPerkQueryParam param, Integer pkCountry);

    /**
     * 补贴配置详情
     *
     * @param pkId 补贴配置ID
     * @return
     */
    CuMemberPerkExt queryDetail(Long pkId);

    /**
     * 保存补贴配置
     *
     * @param cuMemberPerkList 补贴配置数据数据
     * @param userId           操作用户
     * @param pkCountry        所属国家
     * @return
     */
    boolean saveBatchData(List<CuMemberPerk> cuMemberPerkList, Long userId, Integer pkCountry);

    /**
     * 更新补贴配置
     *
     * @param cuMemberPerk 补贴配置数据
     * @param userId       操作用户
     * @return
     */
    boolean updateData(CuMemberPerk cuMemberPerk, Long userId);

    /**
     * 删除补贴配置
     *
     * @param pkIdList 补贴配置ID列表
     * @param userId   操作用户
     */
    void deletePerkData(List<Long> pkIdList, Long userId);

}
