package com.ruoyi.ss.apiBill.mapper;

import com.ruoyi.ss.apiBill.domain.ApiBill;
import com.ruoyi.ss.apiBill.domain.ApiBillQuery;
import com.ruoyi.ss.apiBill.domain.ApiBillVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * API收费订单Mapper接口
 *
 * @author ruoyi
 * @date 2024-08-09
 */
public interface ApiBillMapper
{
    /**
     * 查询API收费订单
     *
     * @param billId API收费订单主键
     * @return API收费订单
     */
    public ApiBillVO selectApiBillByBillId(Long billId);

    /**
     * 查询API收费订单列表
     *
     * @param query API收费订单
     * @return API收费订单集合
     */
    public List<ApiBillVO> selectApiBillList(@Param("query")ApiBillQuery query);

    /**
     * 新增API收费订单
     *
     * @param apiBill API收费订单
     * @return 结果
     */
    public int insertApiBill(ApiBill apiBill);

    /**
     * 修改API收费订单
     *
     * @param apiBill API收费订单
     * @return 结果
     */
    public int updateApiBill(@Param("data") ApiBill apiBill);

    /**
     * 删除API收费订单
     *
     * @param billId API收费订单主键
     * @return 结果
     */
    public int deleteApiBillByBillId(Long billId);

    /**
     * 批量删除API收费订单
     *
     * @param billIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteApiBillByBillIds(Long[] billIds);
}
