import { request } from '@/plugins/http-fetch';

/**
 * 网元参数配置可用属性值列表指定网元类型全部无分页
 * @param query 查询参数
 * @returns object
 */
export function getAllNeConfig(neType: string) {
  return request({
    url: `/ne/config/list/${neType}`,
    method: 'get',
    timeout: 60_000,
  });
}

/**
 * 网元参数配置数据信息
 * @param params 数据 {neType,neId,paramName}
 * @returns object
 */
export function getNeConfigData(params: Record<string, any>) {
  return request({
    url: `/ne/config/data`,
    params,
    method: 'get',
  });
}

/**
 * 网元参数配置数据更新
 * @param data 数据 {neType,neId,paramName:"参数名",paramData:{参数},loc:"层级index仅array"}
 * @returns object
 */
export function editNeConfigData(data: Record<string, any>) {
  return request({
    url: `/ne/config/data`,
    method: 'put',
    data: data,
  });
}

/**
 * 网元参数配置数据新增（array）
 * @param data 数据 {neType,neId,paramName:"参数名",paramData:{参数},loc:"层级index"}
 * @returns object
 */
export function addNeConfigData(data: Record<string, any>) {
  return request({
    url: `/ne/config/data`,
    method: 'post',
    data: data,
  });
}

/**
 * 网元参数配置数据删除（array）
 * @param params 数据 {neType,neId,paramName:"参数名",loc:"层级index"}
 * @returns object
 */
export function delNeConfigData(params: Record<string, any>) {
  return request({
    url: `/ne/config/data`,
    method: 'delete',
    params,
  });
}
