package com.ruoyi.base.service;

import java.util.List;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.base.domain.BaseCardRights;
import com.ruoyi.base.vo.CardRightsVO;

/**
 * 会员卡权益Service接口
 * 
 * @author vinjor-m
 * @date 2025-03-17
 */
public interface IBaseCardRightsService extends IService<BaseCardRights>
{
    IPage<BaseCardRights> queryListPage(BaseCardRights pageReqVO, Page<BaseCardRights> page);

    /**
     * 查询会员卡权益
     * @author vinjor-M
     * @date 15:23 2025/3/18
     * @param id 会员卡id
 * @param userType 用户类型（）
     * @return java.util.List<com.ruoyi.base.domain.BaseCardRights>
    **/
    List<CardRightsVO> getByIdAndType(String id, String userType);

    /**
     * 保存会员卡权益
     * @author vinjor-M
     * @date 16:09 2025/3/18
     * @param cardRightsVOS TODO
    **/
    void saveAndUpdate(List<CardRightsVO> cardRightsVOS);

    /**
     * 通过会员卡id查询权益
     * @author PQZ
     * @date 16:31 2025/3/26
     * @param cardId 会员卡id
     * @return java.util.List<com.ruoyi.base.domain.BaseCardRights>
    **/
    List<CardRightsVO> queryByCardId(String cardId);
}
