package com.njcn.device.pq.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.common.pojo.dto.SimpleDTO;
import com.njcn.device.pq.pojo.vo.AlarmStrategyVO;
import com.njcn.device.pq.pojo.vo.LineIntegrityDataVO;
import com.njcn.device.pq.pojo.vo.TerminalTree;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author yzh
 * @date 2022/9/10
 */
@Mapper
public interface LineIntegrityDataMapper extends BaseMapper<LineIntegrityDataVO> {

    /**
     * 根据供电公司索引获取出省会的信息
     * @param gdIndexes 供电公司索引
     * @return 省会信息
     */
    List<LineIntegrityDataVO> getProvinceList(@Param("gdIndex")List<String> gdIndexes);

    /**
     * 获取出供电公司的信息
     * @param gdIndexes 供电公司索引
     * @return 供电公司信息
     */
    List<LineIntegrityDataVO> getGdList(@Param("gdIndex")List<String> gdIndexes);

    /**
     * 获取出变电站的信息
     * @param lineIndexes 变电站索引
     * @return 变电站信息
     */
    List<LineIntegrityDataVO> getSubList(@Param("lineIndexes")List<String> lineIndexes);

    /**
     * 根据监测点索引集合获取监测点详细参数
     * @param lineIndexes 监测点索引集合
     * @return
     */
    List<LineIntegrityDataVO> getDetailedParametersForLine(@Param("lineIndexes") List<String> lineIndexes,
                                                           @Param("lineGrade")String lineGrade);


    List<AlarmStrategyVO> getAlarmAlgoDescribe(@Param("list") List<AlarmStrategyVO> alarmStrategyVos);
}
