package com.pqs9900.mapper.terminal;

import com.pqs9900.pojo.DataInfo.FlowDetail;
import com.pqs9900.pojo.terminal.*;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

public interface TerminalStateMapper {
    /**
    * @Author chendaofei
    * @Description 获取终端版本流量列表
    * @Date 10:40 2020/8/31
    **/
    List<TerminalRVO> getTerminalList(@Param("devType")String devType, @Param("status")Integer status,@Param("startTime")String startTime);

    /**
     * @Author chendaofei
     * @Description
     * @Date 10:40 2020/8/31
     **/
    List<TerminalRVO> getTerminalList2(@Param("list")List<String> list);

    /**
    * @Author chendaofei
    * @Description 批量修改终端运行状态
    * @Date 9:23 2020/9/2
    **/
    Integer updateDevFlag(@Param("list")List<String> list,@Param("devFlag")Integer devFlag);

    /**
     * @Author chendaofei
     * @Description 删除套餐关系表
     * @Date 12:26 2020/9/21
     **/
    Integer delDevMealAss(@Param("list")List<String> list);

    /**
     * @Author chendaofei
     * @Description 新增设备流量套餐关系表
     * @Date 12:26 2020/9/21
     **/
    Integer addDevMealAss(@Param("list")List<TerminalMealAssDTO> list);

    /**
     * @Author chendaofei
     * @Description 删除套餐关系表
     * @Date 12:26 2020/9/21
     **/
    Integer delStrategyAss(@Param("list")List<String> list);

    /**
     * @Author chendaofei
     * @Description 新增设备流量套餐关系表
     * @Date 12:26 2020/9/21
     **/
    Integer addStrategyAss(@Param("list")List<TerminalStrategyAssDTO> list);

    /**
     * @Author chendaofei
     * @Description 获取阶段时间内操作的终端guid
     * @Date 12:26 2020/9/21
     **/
    List<String> getPushInfoList();


    FlowDetailRVO getTerminalFlowDetail(@Param("devIndex")String devIndex,@Param("startTime") String startTime);

    /**
    * @Author chendaofei
    * @Description 流量统计柱状图数据获取
    * @Date 20:39 2020/10/9
    **/
    List<FlowStatisticsRVO> getFlowStatiscsList(@Param("startTime")String startTime,@Param("list")List<String> list,@Param("mealBi")String mealBi,@Param("mealUse")String mealUse,@Param("mealAll")String mealAll);

    /**
    * @Author chendaofei
    * @Description 统计日流量流量图表数据
    * @Date 21:34 2020/10/12
    **/
    List<FlowStatisticsRVO> getDayFlowList(@Param("devIndex")String devIndex,@Param("startTime") String startTime);

    /**
    * @Author chendaofei
    * @Description 通过终端获取前置ip
    * @Date 9:50 2020/10/14
    **/
    String getIpByTerminal(@Param("devIndex")String devIndex);

}


