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; }