package com.njcn.harmonic.service.activepowerrange;

import com.njcn.harmonic.pojo.param.PowerStatisticsParam;
import com.njcn.harmonic.pojo.vo.PowerStatisticsTargetVO;
import com.njcn.harmonic.pojo.vo.PowerStatisticsVO;
import com.njcn.harmonic.pojo.vo.ThdDataVO;
import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * 有功功率趋势统计 服务类
 * @author guofeihu
 * @since 2024-08-20
 */
public interface PowerStatisticsService {

    /**
     * 根据监测点ID及时间获取有功功率趋势
     * @param powerStatisticsParam
     * @return
     */
    PowerStatisticsVO getDataByLineId(PowerStatisticsParam powerStatisticsParam);

    /**
     * 根据监测点ID、有功功率趋势区间字段、时间获取该有功功率趋势下指标越限列表
     * @param powerStatisticsParam
     * @return
     */
    List<PowerStatisticsTargetVO> getTargetLimitById(PowerStatisticsParam powerStatisticsParam);

    /**
     * 查询稳态详情信息
     * @param param
     * @return
     */
    List<ThdDataVO> getTargetByTimeDetail(PowerStatisticsParam param);

    /**
     * 导出区间数据
     * @param powerStatisticsParam
     * @return
     */
    void exportExcelRangTemplate(PowerStatisticsParam powerStatisticsParam, HttpServletResponse response);

    /**
     * 导出指标越限列表数据
     * @param powerStatisticsParam
     * @return
     */
    void exportExcelListTemplate(PowerStatisticsParam powerStatisticsParam,HttpServletResponse response);

}
