package cn.iocoder.yudao.module.member.service;

import cn.iocoder.yudao.module.member.entity.ActiveRuleCoupon;
import cn.iocoder.yudao.module.member.entity.MemberCoupon;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 营销活动、规则及会员等级与基础卡券关联关系 Service 接口
 *
 * @author pqz
 */
public interface ActiveRuleCouponService extends IService<ActiveRuleCoupon> {

    /**
     * 根据主表id删除关联关系
     *
     * @param id 主表id
     * @author PQZ
     * @date 17:56 2024/9/19
     **/
    void deleteByMainId(String id);

    /**
     * 保存关联关系
     *
     * @param list      卡券id集合
     * @param mainId    主表id
     * @param mainTable 主表名称
     * @author PQZ
     * @date 17:57 2024/9/19
     **/
    void saveActiveRuleCoupon(List<MemberCoupon> list, String mainId, String mainTable);

    /**
     * 根据主表id查询关联关系
     *
     * @param id      主表id
     * @param isChild 是否查询出关联的附属卡券信息
     * @return java.util.List<cn.iocoder.yudao.module.member.entity.ActiveRuleCoupon>
     * @author PQZ
     * @date 17:59 2024/9/19
     **/
    List<MemberCoupon> queryByMainId(String id, boolean isChild);

}