package com.ho.business.service;

import com.ho.business.entity.Station;
import com.ho.business.vo.InverterCurveReqVo;
import com.ho.business.vo.req.DeviceAttrbuteReqVO;
import com.ho.business.vo.req.MonitorQuery;
import com.ho.business.vo.resp.InverterResp.*;
import com.ho.td.api.entity.inverter.InverterTimingGenerate;

import java.util.List;

/**
 * @author gyan
 * @desc: 逆变器
 * @DateTime: 2023/1/6 9:24
 */
public interface InverterService {

    List<InverterTopologyRespVO> selectByStationId(Integer stationId);

    List<InverterPvValueRespVO> getPvDate(MonitorQuery monitorQuery);

    InverterPanelData getPanelData(MonitorQuery monitorQuery);

    List<InverterCurveRespVo> getCurve(InverterCurveReqVo vo);

    /**
     * 电站的逆变器发电量间隔数据
     * @param stations 电站ids
     * @return
     */
    List<InverterTimingGenerate> timingGenerationList(List<Station> stations);

    /**
     * 查询设备属性
     * @param vo
     * @return
     */
    List<DeviceAttributeRespVO> getAttr(DeviceAttrbuteReqVO vo);

}
