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

/**
 * 查询列表
 * @param query 查询参数
 * @returns object
 */
export async function listUEInfoBySMF(query: Record<string, any>) {
  query.nbId = query.id;
  const result = await request({
    url: '/api/rest/ueManagement/v1/elementType/smf/objectType/ueInfo',
    method: 'get',
    params: query,
  });
  let data: DataList = {
    total: 0,
    rows: [],
    code: result.code,
    msg: result.msg,
  };
  // 解析数据
  if (result.code === RESULT_CODE_SUCCESS && result.data) {
    if (Array.isArray(result.data.data)) {
      const rows = result.data.data;
      data.total = rows.length;
      data.rows = rows;
    } else {
      Object.assign(data, result.data);
    }
  }

  // 模拟数据
  // data.code = RESULT_CODE_SUCCESS;
  // data.total = 2;
  // data.rows = [
  //   {
  //     imsi: 'imsi-460000100000090',
  //     msisdn: 'msisdn-12307550090',
  //     pduSessionInfo: [
  //       {
  //         activeTime: '2024-06-19 14:35:26',
  //         dnn: 'ims',
  //         ipv4: '10.10.48.8',
  //         ipv6: '',
  //         pduSessionID: 6,
  //         ranN3IP: '192.168.1.137',
  //         sstSD: '1-000001',
  //         tai: '46000-001124',
  //         upState: 'Active',
  //         upfN3IP: '192.168.1.161',
  //       },
  //       {
  //         activeTime: '2024-06-19 14:35:26',
  //         dnn: 'cmnet',
  //         ipv4: '10.10.48.9',
  //         ipv6: '2001:4860:4860::/64',
  //         pduSessionID: 7,
  //         ranN3IP: '192.168.1.137',
  //         sstSD: '1-000001',
  //         tai: '46000-001124',
  //         upState: 'Active',
  //         upfN3IP: '192.168.1.161',
  //       },
  //     ],
  //     ratType: 'NR',
  //   },
  //   {
  //     imsi: 'imsi-460602072701180',
  //     msisdn: 'msisdn-123460600080',
  //     pduSessionInfo: [
  //       {
  //         activeTime: '2024-06-19 14:31:09',
  //         dnn: 'cmnet',
  //         ipv4: '10.10.48.4',
  //         ipv6: '',
  //         pduSessionID: 5,
  //         ranN3IP: '192.168.8.223',
  //         sstSD: '1-000001',
  //         tai: '46060-0001',
  //         upState: 'Active',
  //         upfN3IP: '192.168.1.161',
  //       },
  //     ],
  //     ratType: 'EUTRAN',
  //   },
  // ];
  return data;
}

/**
 * 首页查询SMF在线用户数
 * @param query 查询参数
 * @returns neId
 */
export async function listUENumBySMF(neId: String) {
  const result = await request({
    url: `/api/rest/ueManagement/v1/elementType/smf/objectType/ueNum?neId=${neId}`,
    method: 'get',
  });
  if (result.code === RESULT_CODE_SUCCESS) {
    return Object.assign(result, {
      data: result.data.data['ueNum'],
    });
  }

  // 模拟数据
  // { "data": { "ueNum": 0 } }
  // result.data = 0
  return result;
}
