package com.agri.generator.mapper;

import java.util.List;
import com.agri.generator.domain.SysApiInfo;
import com.agri.generator.domain.SysApiParam;

/**
 * 接口基础信息Mapper接口
 * 
 * @author agri
 * @date 2025-12-30
 */
public interface SysApiInfoMapper 
{
    /**
     * 查询接口基础信息
     * 
     * @param id 接口基础信息主键
     * @return 接口基础信息
     */
    public SysApiInfo selectSysApiInfoById(Long id);

    /**
     * 查询接口基础信息列表
     * 
     * @param sysApiInfo 接口基础信息
     * @return 接口基础信息集合
     */
    public List<SysApiInfo> selectSysApiInfoList(SysApiInfo sysApiInfo);

    /**
     * 新增接口基础信息
     * 
     * @param sysApiInfo 接口基础信息
     * @return 结果
     */
    public int insertSysApiInfo(SysApiInfo sysApiInfo);

    /**
     * 修改接口基础信息
     * 
     * @param sysApiInfo 接口基础信息
     * @return 结果
     */
    public int updateSysApiInfo(SysApiInfo sysApiInfo);

    /**
     * 删除接口基础信息
     * 
     * @param id 接口基础信息主键
     * @return 结果
     */
    public int deleteSysApiInfoById(Long id);

    /**
     * 批量删除接口基础信息
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteSysApiInfoByIds(Long[] ids);

    /**
     * 批量删除接口参数
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteSysApiParamByApiIds(Long[] ids);
    
    /**
     * 批量新增接口参数
     * 
     * @param sysApiParamList 接口参数列表
     * @return 结果
     */
    public int batchSysApiParam(List<SysApiParam> sysApiParamList);
    

    /**
     * 通过接口基础信息主键删除接口参数信息
     * 
     * @param id 接口基础信息ID
     * @return 结果
     */
    public int deleteSysApiParamByApiId(Long id);
}
