package com.njcn.harmonic.service;

import com.njcn.harmonic.pojo.param.HarmonicPublicParam;
import com.njcn.harmonic.pojo.vo.HarmonicDeptVO;
import com.njcn.harmonic.pojo.vo.HarmonicLineVO;
import com.njcn.harmonic.pojo.vo.HarmonicSubstationVO;
import com.njcn.harmonic.pojo.vo.PollutionVO;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author xy
 * @date 2021/12/31 9:52
 */
public interface IHarmonicService {

    /**
     * 功能描述: 获取部门变电站关系
     *
     * @param harmonicPublicParam 实体参数
     * @return java.util.List<java.lang.Object>
     * @author xy
     * @date 2022/2/21 16:48
     */
    List<PollutionVO> getDeptSubstationRelations(HarmonicPublicParam harmonicPublicParam);


    /**
     * 功能描述: 根据变电站获取监测点详情
     *
     * @param param
     * @return java.util.List<com.njcn.harmonic.pojo.vo.PollutionVO>
     * @author xy
     * @date 2022/2/21 20:51
     */
    List<HarmonicDeptVO> getDeptInfo(HarmonicPublicParam param);


    /**
     * 功能描述: 根据部门获取变电站列表
     *
     * @param param
     * @return java.util.List<com.njcn.harmonic.pojo.vo.PollutionVO>
     * @author xy
     * @date 2022/2/21 20:51
     */
    List<HarmonicSubstationVO> getSubstationInfoById(HarmonicPublicParam param);


    /**
     * 功能描述: 根据变电站获取监测点详情
     *
     * @param substationParam
     * @return java.util.List<com.njcn.harmonic.pojo.vo.PollutionVO>
     * @author xy
     * @date 2022/2/21 20:51
     */
    List<HarmonicLineVO> getLineInfoById(HarmonicPublicParam substationParam);


    /**
     * 功能描述:获取排名前10的监测点
     * @param param
     *
     * @return java.util.List<com.njcn.harmonic.pojo.vo.LoadTypeVO>
     * @author xy
     * @date 2022/2/22 10:04
     */
    List<HarmonicLineVO> getLineRank(HarmonicPublicParam param);


}
