package com.ruoyi.mall.mapper;

import java.util.List;
import com.ruoyi.mall.domain.TbVipCode;
import org.apache.ibatis.annotations.Param;

/**
 * 会员码Mapper接口
 *
 * @author lsm
 * @date 2023-12-22
 */
public interface TbVipCodeMapper
{
    /**
     * 查询会员码
     *
     * @param codeId 会员码主键
     * @return 会员码
     */
    public TbVipCode selectTbVipCodeByCodeId(Long codeId);

    /**
     * 通过会员码查询
     * @param vipCode
     * @return
     */
    public TbVipCode selectTbVipCodeByVipCode(@Param("vipCode") String vipCode);

    /**
     * 查询会员码列表
     *
     * @param tbVipCode 会员码
     * @return 会员码集合
     */
    public List<TbVipCode> selectTbVipCodeList(TbVipCode tbVipCode);

    /**
     * 新增会员码
     *
     * @param tbVipCode 会员码
     * @return 结果
     */
    public int insertTbVipCode(TbVipCode tbVipCode);

    /**
     * 修改会员码
     *
     * @param tbVipCode 会员码
     * @return 结果
     */
    public int updateTbVipCode(TbVipCode tbVipCode);

    /**
     * 删除会员码
     *
     * @param codeId 会员码主键
     * @return 结果
     */
    public int deleteTbVipCodeByCodeId(Long codeId);

    /**
     * 批量删除会员码
     *
     * @param codeIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTbVipCodeByCodeIds(Long[] codeIds);

    /**
     * 查询会员码是否存在
     * @param vipCode 会员码
     * @return 结果
     */
    public int selectVipCodeByCode(@Param("vipCode")String vipCode);

    /**
     * 批量插入会员码
     * @param list 集合
     * @return 结果
     */
    public int insertVipCode(List<TbVipCode> list);
}
