package com.tongran.system.mapper;

import com.tongran.system.domain.EpsInitialTrafficData;
import org.springframework.data.repository.query.Param;

import java.util.List;

public interface EpsInitialTrafficDataMapper {
    /**
     * 创建指定名称的EPS流量表
     * @param tableName 表名
     */
    void createEpsTrafficTable(@Param("tableName") String tableName);
    /**
     * 创建指定名称的EPS流量初始表
     * @param tableName 表名
     */
    void createEpsInitialTrafficTable(@Param("tableName") String tableName);

    /**
     * 创建置顶名称的mtr探测结果表
     * @param tableName
     */
    void createMtrProbeResultTable(@Param("tableName") String tableName);

    /**
     * 创建交换机初始流量表
     * @param tableName
     */
    void createSwitchInfoTable(@Param("tableName") String tableName);

    /**
     * 创建交换机业务流量表
     * @param tableName
     */

    void createSwitchInfoDetailsTable(@Param("tableName") String tableName);
    /**
     * 单条插入数据
     * @param data 流量数据
     */
    void insert(EpsInitialTrafficData data);

    /**
     * 批量插入数据
     * @param epsInitialTrafficData 流量数据实体类
     */
    void batchInsert(EpsInitialTrafficData epsInitialTrafficData);

    /**
     * 条件查询
     * @param condition 查询条件实体
     * @return 流量数据列表
     */
    List<EpsInitialTrafficData> selectByCondition(EpsInitialTrafficData condition);
    /**
     * 查询初始流量信息
     * @param condition 查询条件实体
     * @return 初始流量数据列表
     */
    List<EpsInitialTrafficData> getAllTraficMsg(EpsInitialTrafficData condition);

    /**
     * 保存金山流量信息
     * @param epsInitialTrafficData
     * @return
     */
    int updateMachineTraffic(EpsInitialTrafficData epsInitialTrafficData);

    List<EpsInitialTrafficData> getTrafficListByClientIds(EpsInitialTrafficData condition);

    void createOtherMsgTable(String tableName);

    void createSwitchOpMdTable(String tableName);

    void createDiskInfo(String tableName);
}
