From e6d62da386ae5c4989b0de703bc776a7ab7b2244 Mon Sep 17 00:00:00 2001 From: lai <371757574@qq.com> Date: Tue, 12 Dec 2023 16:44:56 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BD=91=E5=85=83=E5=88=97=E8=A1=A8=E8=BF=9B?= =?UTF-8?q?=E8=A1=8C=E7=89=B9=E5=88=B6=E5=8C=96=E6=8E=92=E5=BA=8F-?= =?UTF-8?q?=E5=88=9D=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/configManage/neManage.ts | 51 ++++++++++++++++++++++++++++++++ src/api/index.ts | 29 ++++++++++++++++-- 2 files changed, 78 insertions(+), 2 deletions(-) diff --git a/src/api/configManage/neManage.ts b/src/api/configManage/neManage.ts index d7e7b477..bdb00f16 100644 --- a/src/api/configManage/neManage.ts +++ b/src/api/configManage/neManage.ts @@ -11,6 +11,24 @@ export async function listNeInfo(query: Record) { let totalSQL = 'select count(*) as total from ne_info where status=0 '; let rowsSQL = 'select * from ne_info where status=0 '; + // 系统特定顺序 + const specificOrder = [ + 'OMC', + 'MME', + 'AMF', + 'AUSF', + 'UDM', + 'SMF', + 'PCF', + 'UPF', + 'NRF', + 'NSSF', + 'IMS', + 'N3IWF', + 'NEF', + 'LMF', + ]; + // 查询 let querySQL = ''; if (query.neType) { @@ -46,6 +64,14 @@ export async function listNeInfo(query: Record) { data.total = itemData[0]['total']; } else { data.rows = itemData.map(v => parseObjLineToHump(v)); + //通过sort进行冒泡排序 + data.rows.sort((a: any, b: any) => { + const typeA = specificOrder.indexOf(a.neType); + const typeB = specificOrder.indexOf(b.neType); + if (typeA === -1) return 1; // 如果不在特定顺序中,排到后面 + if (typeB === -1) return -1; // 如果不在特定顺序中,排到后面 + return typeA - typeB; + }); } } }); @@ -123,6 +149,23 @@ export async function delNeInfo(data: Record) { * @returns object */ export async function getNelistAll() { + // 系统特定顺序 + const specificOrder = [ + 'OMC', + 'MME', + 'AMF', + 'AUSF', + 'UDM', + 'SMF', + 'PCF', + 'UPF', + 'NRF', + 'NSSF', + 'IMS', + 'N3IWF', + 'NEF', + 'LMF', + ]; // 发起请求 const result = await request({ url: `/api/rest/databaseManagement/v1/elementType/omc_db/objectType/ne_info`, @@ -134,6 +177,14 @@ export async function getNelistAll() { // 解析数据 if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) { let data = result.data.data[0]; + //通过sort进行冒泡排序 + data['ne_info'].sort((a: any, b: any) => { + const typeA = specificOrder.indexOf(a.ne_type); + const typeB = specificOrder.indexOf(b.ne_type); + if (typeA === -1) return 1; + if (typeB === -1) return -1; + return typeA - typeB; + }); return Object.assign(result, { data: parseObjLineToHump(data['ne_info']), }); diff --git a/src/api/index.ts b/src/api/index.ts index c8f4addd..50ac53d4 100644 --- a/src/api/index.ts +++ b/src/api/index.ts @@ -7,6 +7,23 @@ import { parseDateToStr } from '@/utils/date-utils'; * @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', @@ -43,8 +60,16 @@ export async function listMain() { return mergedObj; }); - // console.log(mergedData); - // console.log(rowArr) + //通过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; + }); + //console.log(mergedData); + return mergedData; }