package com.huatek.busi.mapper;

import com.huatek.busi.vo.BusiParamArresterVo;
import com.huatek.busi.vo.BusiParamGisVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 避雷器的权重系数维护表 Mapper
 *
 * @author anker_cheng
 * @date Jul 12, 2019 2:57:22 PM
 */
@Repository
public interface BusiParamArresterMapper {
    /**
     * 获取一级设备分析参数列表
     *
     * @param siteId
     *            站点ID
     * @param mainEquipmentId
     *            主设备ID
     * @return 分析参数列表
     */
    List<BusiParamArresterVo> findFirstLevelParams(@Param("siteId") String siteId,
                                                   @Param("mainEquipmentId") String mainEquipmentId, @Param("number") Integer number);


    /**
     * 获取一级设备分析参数列表(无值)
     *
     * @param siteId
     *            站点ID
     * @param mainEquipmentId
     *            主设备ID
     * @return 分析参数列表
     */
    List<BusiParamArresterVo> findNotValueFirstLevelParams(@Param("siteId") String siteId,
                                                              @Param("mainEquipmentId") String mainEquipmentId,@Param("number") Integer number);


    /**
     * 获取分析参数权重
     *
     * @param siteId
     *            站点ID
     * @param mainEquipmentId
     *            主设备ID
     * @return 分析参数列表
     */
    List<BusiParamArresterVo> findBusiParamArresterWeights(@Param("siteId") String siteId,
        @Param("mainEquipmentId") String mainEquipmentId,@Param("number") Integer number);


    /**
     * 获取分析参数的子分类列表
     *
     * @param siteId
     *            站点ID
     * @param mainEquipmentId
     *            主设备ID
     * @param pname
     *            上级参数名称
     * @return 分析参数列表
     */
    List<BusiParamArresterVo> findSubParams(@Param("siteId") String siteId,
        @Param("mainEquipmentId") String mainEquipmentId, @Param("pname") String pname,@Param("number") Integer number);

    List<BusiParamArresterVo> findBusiParamArresterManual(@Param("siteId") String siteId, @Param("mainEquipmentId") String mainEquipmentId);

    BusiParamArresterVo findFirstLevelNumber(@Param("siteId") String siteId, @Param("mainEquipmentId") String mainEquipmentId);
}
