133 lines
3.0 KiB
TypeScript
133 lines
3.0 KiB
TypeScript
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
|
import { request } from '@/plugins/http-fetch';
|
|
import { parseDateToStr } from '@/utils/date-utils';
|
|
/**
|
|
* 查询公告列表
|
|
* @param query 查询参数
|
|
* @returns object
|
|
*/
|
|
export async function listMain() {
|
|
// 系统特定顺序
|
|
const specificOrder = [
|
|
'OMC',
|
|
'MME',
|
|
'AMF',
|
|
'AUSF',
|
|
'UDM',
|
|
'SMF',
|
|
'PCF',
|
|
'UPF',
|
|
'NRF',
|
|
'NSSF',
|
|
'IMS',
|
|
'N3IWF',
|
|
'NEF',
|
|
'LMF',
|
|
];
|
|
const result = await request({
|
|
url: '/api/rest/systemManagement/v1/elementType/all/objectType/systemState',
|
|
method: 'get',
|
|
timeout: 60_000,
|
|
});
|
|
// console.log(result);
|
|
let realData = result.data.data;
|
|
const mergedData = realData.map((obj: any) => {
|
|
// console.log(obj);
|
|
const [key, value] = Object.entries(obj)[0];
|
|
const ipAddress = (value as any).ipAddress;
|
|
const systemState = (value as any).systemState;
|
|
const serialNum = (value as any).serialNum;
|
|
const version = (value as any).version;
|
|
|
|
const errCode = systemState && systemState['errorCode'];
|
|
var time = new Date();
|
|
// console.log(key, value);
|
|
let mergedObj;
|
|
if (errCode === undefined && systemState) {
|
|
mergedObj = {
|
|
...systemState,
|
|
refresh: parseDateToStr(time),
|
|
ipAddress: ipAddress,
|
|
name: key.split('/').join('_'),
|
|
status: 'Normal',
|
|
};
|
|
} else {
|
|
mergedObj = {
|
|
version,
|
|
refresh: parseDateToStr(time),
|
|
ipAddress,
|
|
serialNum,
|
|
name: key.split('/').join('_'),
|
|
expiryDate: '-',
|
|
status: 'Abnormal',
|
|
};
|
|
}
|
|
return mergedObj;
|
|
});
|
|
//通过sort进行冒泡排序
|
|
mergedData.sort((a: any, b: any) => {
|
|
const typeA = specificOrder.indexOf(a.name.split('_')[0]);
|
|
const typeB = specificOrder.indexOf(b.name.split('_')[0]);
|
|
if (typeA === -1) return 1; // 如果不在特定顺序中,排到后面
|
|
if (typeB === -1) return -1; // 如果不在特定顺序中,排到后面
|
|
return typeA - typeB;
|
|
});
|
|
|
|
return mergedData;
|
|
}
|
|
|
|
/**
|
|
* 获取服务器时间
|
|
* @returns object
|
|
*/
|
|
export async function getServerTime() {
|
|
// 发起请求
|
|
const result = await request({
|
|
url: `/api/rest/systemManagement/v1/elementType/OMC/objectType/time`,
|
|
method: 'get',
|
|
});
|
|
// 解析数据
|
|
if (result.code === RESULT_CODE_SUCCESS && result.data) {
|
|
return Object.assign(result, {
|
|
data: result.data.data,
|
|
});
|
|
}
|
|
return result;
|
|
}
|
|
|
|
/**
|
|
* 获取系统暴露的配置信息
|
|
* @returns object
|
|
*/
|
|
export function getSysConf() {
|
|
return request({
|
|
url: `/sys-conf`,
|
|
method: 'get',
|
|
whithToken: false,
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 首次引导安装开始
|
|
* @returns object
|
|
*/
|
|
export function guideStart() {
|
|
return request({
|
|
url: `/guide`,
|
|
method: 'post',
|
|
whithToken: false,
|
|
repeatSubmit: false,
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 首次引导安装完成
|
|
* @returns object
|
|
*/
|
|
export function guideDone() {
|
|
return request({
|
|
url: `/guide`,
|
|
method: 'put',
|
|
});
|
|
}
|