package com.pqs9000.mapper.responsibility;

import com.pqs9000.pojo.responsibility.OverLimitMonitor;
import com.pqs9000.pojo.responsibility.TargetDetailDto;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface OverLimitMonitorMapper {

    List<OverLimitMonitor> getOverLimitMonitorList(@Param("list") List<Integer> list,@Param("startTime") String startTime,@Param("endTime") String endTime,@Param("vollevel") String vollevel);

    /**
     * 获取需要计算的监测点集合
     */
    List<String> getLineList(@Param("startTime") String startTime, @Param("endTime") String endTime);

    /**
     * 电压偏差 幅值&&限值&&差值
     */
    List<TargetDetailDto> getData0(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("list") List<String> lineList);

    /**
     * 电压总谐波畸变率、三相电压不平衡度、频率偏差 幅值&&限值&&差值
     */
    List<TargetDetailDto> getData1(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("list") List<String> lineList);

    /**
     * 负序电流 幅值&&限值&&差值
     */
    List<TargetDetailDto> getData2(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("list") List<String> lineList);

    /**
     * 长时闪变 幅值&&限值&&差值
     */
    List<TargetDetailDto> getData3(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("list") List<String> lineList);

    /**
     * 谐波电流各个数据占比
     */
    List<TargetDetailDto> getData4(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("list") List<String> lineList);

    /**
     * 谐波电压各个数据占比
     */
    List<TargetDetailDto> getData5(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("list") List<String> lineList);

    /**
     * 谐波电压含有率各个数据占比
     */
    List<TargetDetailDto> getData6(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("list") List<String> lineList);

    /**
     * 间谐波电压各个数据占比
     */
    List<TargetDetailDto> getData7(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("list") List<String> lineList);

    /**
     * 谐波电流
     */
    TargetDetailDto getHarmonicData1(@Param("startTime") String startTime, @Param("endTime") String endTime,@Param("lineId") Integer lineId, @Param("time") Integer time);

    /**
     * 谐波电压 - 电压总谐波畸变率
     */
    TargetDetailDto getHarmonicData2(@Param("startTime") String startTime, @Param("endTime") String endTime,@Param("lineId") Integer lineId, @Param("time") Integer time);

    /**
     * 谐波电压 - 电压含有率
     */
    TargetDetailDto getHarmonicData3(@Param("startTime") String startTime, @Param("endTime") String endTime,@Param("lineId") Integer lineId, @Param("time") Integer time);

    /**
     * 间谐波电压 - 电压含有率
     */
    TargetDetailDto getHarmonicData4(@Param("startTime") String startTime, @Param("endTime") String endTime,@Param("lineId") Integer lineId, @Param("time") Integer time);


}
