package com.ruoyi.system.mapper;

import com.ruoyi.system.domain.AllInterfaceName;
import org.springframework.data.repository.query.Param;

import java.util.List;

/**
 * 所有接口名称Mapper接口
 * 
 * @author gyt
 * @date 2025-08-25
 */
public interface AllInterfaceNameMapper 
{
    /**
     * 查询所有接口名称
     * 
     * @param id 所有接口名称主键
     * @return 所有接口名称
     */
    public AllInterfaceName selectAllInterfaceNameById(Long id);

    /**
     * 查询所有接口名称列表
     * 
     * @param allInterfaceName 所有接口名称
     * @return 所有接口名称集合
     */
    public List<AllInterfaceName> selectAllInterfaceNameList(AllInterfaceName allInterfaceName);

    /**
     * 新增所有接口名称
     * 
     * @param allInterfaceName 所有接口名称
     * @return 结果
     */
    public int insertAllInterfaceName(AllInterfaceName allInterfaceName);

    /**
     * 修改所有接口名称
     * 
     * @param allInterfaceName 所有接口名称
     * @return 结果
     */
    public int updateAllInterfaceName(AllInterfaceName allInterfaceName);

    /**
     * 删除所有接口名称
     * 
     * @param id 所有接口名称主键
     * @return 结果
     */
    public int deleteAllInterfaceNameById(Long id);

    /**
     * 批量删除所有接口名称
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteAllInterfaceNameByIds(Long[] ids);

    /**
     * 根据接口名称查询表中是否存在信息
     * @param interfaceName
     * @return
     */
    List<AllInterfaceName> selectByNames(AllInterfaceName interfaceName);

    /**
     * 批量插入接口名称
     * @param list
     * @return
     */
    int batchInsert(@Param("list") List<AllInterfaceName> list);
    /**
     * 查询所有服务器sn
     * @param interfaceName
     * @return
     */
    List<AllInterfaceName> getAllDeviceSn(AllInterfaceName interfaceName);
    /**
     * 查询所有交换机sn
     * @param interfaceName
     * @return
     */
    List<AllInterfaceName> getAllSwitchSn(AllInterfaceName interfaceName);

    /**
     * 批量编辑
     * @param records
     */
    void batchUpdate(List<AllInterfaceName> records);
}
