package com.tongran.rocketmq.mapper;

import com.tongran.rocketmq.domain.RmNetworkInterface;
import com.tongran.rocketmq.domain.vo.EpsMethodChangeRecordVo;

import java.util.List;

/**
 * 客户端网络接口信息Mapper接口
 * 
 * @author tongran
 * @date 2025-10-14
 */
public interface RmNetworkInterfaceMapper 
{
    /**
     * 查询客户端网络接口信息
     * 
     * @param id 客户端网络接口信息主键
     * @return 客户端网络接口信息
     */
    public RmNetworkInterface selectRmNetworkInterfaceById(Long id);

    /**
     * 查询客户端网络接口信息列表
     * 
     * @param rmNetworkInterface 客户端网络接口信息
     * @return 客户端网络接口信息集合
     */
    public List<RmNetworkInterface> selectRmNetworkInterfaceList(RmNetworkInterface rmNetworkInterface);

    /**
     * 新增客户端网络接口信息
     * 
     * @param rmNetworkInterface 客户端网络接口信息
     * @return 结果
     */
    public int insertRmNetworkInterface(RmNetworkInterface rmNetworkInterface);

    /**
     * 修改客户端网络接口信息
     * 
     * @param rmNetworkInterface 客户端网络接口信息
     * @return 结果
     */
    public int updateRmNetworkInterface(RmNetworkInterface rmNetworkInterface);

    /**
     * 删除客户端网络接口信息
     * 
     * @param id 客户端网络接口信息主键
     * @return 结果
     */
    public int deleteRmNetworkInterfaceById(Long id);

    /**
     * 批量删除客户端网络接口信息
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteRmNetworkInterfaceByIds(Long[] ids);

    int updateRmNetworkInterfaceByMac(RmNetworkInterface rmNetworkInterface);

    int updateNetMsgByMac(RmNetworkInterface rmNetworkInterface);

    int addTrafficPortChangeRecord(EpsMethodChangeRecordVo recordAddData);
}
