package com.jsowell.pile.mapper;

import com.jsowell.pile.domain.MemberInvoiceTitle;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 会员发票抬头Mapper接口
 *
 * @author jsowell
 * @date 2023-04-13
 */
@Repository
public interface MemberInvoiceTitleMapper {
	/**
	 * 查询会员发票抬头
	 *
	 * @param id 会员发票抬头主键
	 * @return 会员发票抬头
	 */
	public MemberInvoiceTitle selectMemberInvoiceTitleById(Long id);

	/**
	 * 查询会员发票抬头列表
	 *
	 * @param memberInvoiceTitle 会员发票抬头
	 * @return 会员发票抬头集合
	 */
	public List<MemberInvoiceTitle> selectMemberInvoiceTitleList(MemberInvoiceTitle memberInvoiceTitle);

	/**
	 * 新增会员发票抬头
	 *
	 * @param memberInvoiceTitle 会员发票抬头
	 * @return 结果
	 */
	public int insertMemberInvoiceTitle(MemberInvoiceTitle memberInvoiceTitle);

	/**
	 * 修改会员发票抬头
	 *
	 * @param memberInvoiceTitle 会员发票抬头
	 * @return 结果
	 */
	public int updateMemberInvoiceTitle(MemberInvoiceTitle memberInvoiceTitle);

	/**
	 * 删除会员发票抬头
	 *
	 * @param id 会员发票抬头主键
	 * @return 结果
	 */
	public int deleteMemberInvoiceTitleById(Long id);

	/**
	 * 批量删除会员发票抬头
	 *
	 * @param ids 需要删除的数据主键集合
	 * @return 结果
	 */
	public int deleteMemberInvoiceTitleByIds(Long[] ids);

	void batchUpdateDefaultFlag(@Param("titleIdList") List<Long> titleIdList);
}
