package com.huatek.busi.service.param;

import com.huatek.busi.entity.BusiParamArrester;
import com.huatek.busi.entity.BusiParamGis;
import com.huatek.busi.vo.BusiParamArresterVo;
import com.huatek.busi.vo.BusiParamGisVo;

import java.util.List;

/**
 * 避雷器的权重系数维护表 Service
 *
 * @author vent
 * @date 3 31, 2023 2:57:26 PM
 */
public interface BusiParamArresterService {

    /**
     * 初始化设备分析参数
     *
     * @param token
     *            token
     * @param siteId
     *            站点ID
     * @param mainEquipmentId
     *            主设备编码
     */
    void initBusiParams(String token, String siteId, String mainEquipmentId);

    /**
     * 获取设备的分析参数列表
     *
     * @param siteId
     *            站点ID
     * @param mainEquipmentId
     *            主设备ID
     * @return 分析参数列表
     */
    List<BusiParamArresterVo> findBusiParamArrester(String siteId, String mainEquipmentId);

    /**
     * 获取设备的分析参数列表(无具体值)
     *
     * @param siteId
     *            站点ID
     * @param mainEquipmentId
     *            主设备ID
     * @return 分析参数列表
     */
    List<BusiParamArresterVo> findNotValueBusiParamArrester(String siteId, String mainEquipmentId);


    /**
     * 保存分析参数列表
     *
     * @param token
     * @param busiParamArresters
     * @return
     */
    int updateBusiParamArrester(String token, List<BusiParamArrester> busiParamArresters);

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

    List<BusiParamArresterVo> findBusiParamGisManual(String siteId, String mainTreeId);

    int updateCalculateBusiParam(String token, List<BusiParamArrester> busiParamArresters);
}
