package com.njcn.harmonic.mapper;

import com.baomidou.dynamic.datasource.annotation.DS;
import com.njcn.harmonic.pojo.param.HarmonicHistoryParam;
import com.njcn.influx.pojo.bo.HarmonicHistoryData;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@DS("oracle")
public interface HistoryDataMapper{
	//相电压有效值
	List<HarmonicHistoryData> getDataV(@Param("param") HarmonicHistoryParam param);
	//线电压有效值
	List<HarmonicHistoryData> getDataV_lvr(@Param("param") HarmonicHistoryParam param);
	//电压偏差
	List<HarmonicHistoryData> getDataV_vu_dev(@Param("param") HarmonicHistoryParam param);
	//三相电压不平衡度
	List<HarmonicHistoryData> getDataV_v_unbalance(@Param("param") HarmonicHistoryParam param);
	//电压不平衡
	List<HarmonicHistoryData> getDataV_v_zero(@Param("param") HarmonicHistoryParam param);
	//电压总谐波畸变率
	List<HarmonicHistoryData> getDataV_v_thd(@Param("param") HarmonicHistoryParam param);
	//电流有效值
	List<HarmonicHistoryData> getDataI_rms(@Param("param") HarmonicHistoryParam param);
	//电流总畸变率
	List<HarmonicHistoryData> getDataI_i_thd(@Param("param") HarmonicHistoryParam param);
	//负序电流
	List<HarmonicHistoryData> getDataI_i_neg(@Param("param") HarmonicHistoryParam param);
	//频率 V9暂时代表Freq
	List<HarmonicHistoryData> getDataV_i_neg(@Param("param") HarmonicHistoryParam param);
	//谐波电压含有率
	List<HarmonicHistoryData> getDataHarmratV_v(@Param("param") HarmonicHistoryParam param,@Param("number") Integer number);
	//谐波电流含有率
	List<HarmonicHistoryData> getDataHarmratI_i(@Param("param") HarmonicHistoryParam param,@Param("number") Integer number);
	//谐波电压幅值
	List<HarmonicHistoryData> getDataV_v(@Param("param") HarmonicHistoryParam param,@Param("number") Integer number);
	//谐波电流幅值
	List<HarmonicHistoryData> getDataI_i(@Param("param") HarmonicHistoryParam param,@Param("number") Integer number);
	//谐波电压相角
	List<HarmonicHistoryData> getDataHarmphasic_v(@Param("param") HarmonicHistoryParam param,@Param("number") Integer number);
	//谐波电流相角
	List<HarmonicHistoryData> getDataHarmphasic_i(@Param("param") HarmonicHistoryParam param,@Param("number") Integer number);
	//todo 缺少间谐波电压含有率
	//todo 缺少间谐波电流含有率
	//间谐波电压幅值
	List<HarmonicHistoryData> getDataInharmrateV_v(@Param("param") HarmonicHistoryParam param,@Param("number") Integer number);
	//间谐波电流幅值
	List<HarmonicHistoryData> getDataInharmrateI_i(@Param("param") HarmonicHistoryParam param,@Param("number") Integer number);
	//谐波有功功率
	List<HarmonicHistoryData> getDataHarmpowerP_p(@Param("param") HarmonicHistoryParam param,@Param("number") Integer number);
	//谐波无功功率
	List<HarmonicHistoryData> getDataHarmpowerQ_q(@Param("param") HarmonicHistoryParam param,@Param("number") Integer number);
	//谐波视在功率
	List<HarmonicHistoryData> getDataHarmpowerS_s(@Param("param") HarmonicHistoryParam param,@Param("number") Integer number);
	//三相有功功率
	List<HarmonicHistoryData> getDataHarmpowerP(@Param("param") HarmonicHistoryParam param);
	//三相无功功率
	List<HarmonicHistoryData> getDataHarmpowerQ(@Param("param") HarmonicHistoryParam param);
	//三相视在功率
	List<HarmonicHistoryData> getDataHarmpowerS(@Param("param") HarmonicHistoryParam param);
	//三相总有功功率
	List<HarmonicHistoryData> getDataHarmpowerP_t(@Param("param") HarmonicHistoryParam param);
	//三相总无功功率
	List<HarmonicHistoryData> getDataHarmpowerQ_t(@Param("param") HarmonicHistoryParam param);
	//三相总视在功率
	List<HarmonicHistoryData> getDataHarmpowerS_t(@Param("param") HarmonicHistoryParam param);
	//视在功率因数
	List<HarmonicHistoryData> getDataHarmpowerP_pf(@Param("param") HarmonicHistoryParam param);
	//位移功率因数
	List<HarmonicHistoryData> getDataHarmpowerP_df(@Param("param") HarmonicHistoryParam param);
	//总视在功率因数
	List<HarmonicHistoryData> getDataHarmpowerP_pf_T(@Param("param") HarmonicHistoryParam param);
	//总位移功率因数
	List<HarmonicHistoryData> getDataHarmpowerP_df_T(@Param("param") HarmonicHistoryParam param);
	//长时闪变
	List<HarmonicHistoryData> getDataPlt(@Param("param") HarmonicHistoryParam param);
	//短时闪变
	List<HarmonicHistoryData> getDataFlicker(@Param("param") HarmonicHistoryParam param);
	//电压波动
	List<HarmonicHistoryData> getDataFluc(@Param("param") HarmonicHistoryParam param);
}

