package com.ruoyi.ems.service;

import com.ruoyi.ems.model.PvSupplyExportVO;
import com.ruoyi.ems.model.PvSupplyVO;
import com.ruoyi.ems.model.QueryMeter;

import java.util.List;

/**
 * 光伏产能统计Service接口
 */
public interface IElecPvSupplyHService {

    /**
     * 查询光伏产能统计列表
     */
    List<PvSupplyVO> selectPvSupplyList(QueryMeter queryMeter);

    /**
     * 查询光伏产能统计汇总
     */
    PvSupplyVO selectPvSupplySummary(QueryMeter queryMeter);

    /**
     * 导出光伏产能统计列表
     */
    List<PvSupplyVO> exportPvSupplyList(QueryMeter queryMeter);

    /**
     * 转换为导出VO列表
     */
    List<PvSupplyExportVO> convertToPvSupplyExportVOList(List<PvSupplyVO> originalList, String timeDimension);

    /**
     * 查询光伏产能按区域分布（用于饼图）
     * @param queryMeter 查询参数
     * @return 按区域分组的产能数据列表
     */
    List<PvSupplyVO> selectPvSupplyDistribution(QueryMeter queryMeter);

    /**
     * 查询光伏产能分布明细（按区域和日期分组）
     * @param queryMeter 查询参数
     * @return 按区域和日期分组的产能数据列表
     */
    List<PvSupplyVO> selectPvSupplyDistributionDetail(QueryMeter queryMeter);
}