fix: UE事件MME 看板推送显示/类型结果保持和AMF一致
This commit is contained in:
@@ -23,13 +23,16 @@ const queue = new PQueue({ concurrency: 1, autoStart: true });
|
|||||||
|
|
||||||
/**字典数据 */
|
/**字典数据 */
|
||||||
let dict: {
|
let dict: {
|
||||||
/**UE 事件类型MME */
|
/**UE 事件认证代码类型 */
|
||||||
ueEventTypeMME: DictType[];
|
ueAauthCode: DictType[];
|
||||||
/**UE 事件结果MME */
|
/**UE 事件类型 */
|
||||||
ueEventResultMME: DictType[];
|
ueEventType: DictType[];
|
||||||
|
/**UE 事件CM状态 */
|
||||||
|
ueEventCmState: DictType[];
|
||||||
} = reactive({
|
} = reactive({
|
||||||
ueEventTypeMME: [],
|
ueAauthCode: [],
|
||||||
ueEventResultMME: [],
|
ueEventType: [],
|
||||||
|
ueEventCmState: [],
|
||||||
});
|
});
|
||||||
|
|
||||||
/**开始结束时间 */
|
/**开始结束时间 */
|
||||||
@@ -40,7 +43,7 @@ let queryParams = reactive({
|
|||||||
/**网元类型 */
|
/**网元类型 */
|
||||||
neType: 'MME',
|
neType: 'MME',
|
||||||
neId: '001',
|
neId: '001',
|
||||||
eventType: '',
|
eventType: 'auth-result',
|
||||||
imsi: '',
|
imsi: '',
|
||||||
sortField: 'timestamp',
|
sortField: 'timestamp',
|
||||||
sortOrder: 'desc',
|
sortOrder: 'desc',
|
||||||
@@ -56,9 +59,9 @@ let queryParams = reactive({
|
|||||||
|
|
||||||
/**查询参数重置 */
|
/**查询参数重置 */
|
||||||
function fnQueryReset() {
|
function fnQueryReset() {
|
||||||
eventTypes.value = [];
|
eventTypes.value = ['auth-result'];
|
||||||
queryParams = Object.assign(queryParams, {
|
queryParams = Object.assign(queryParams, {
|
||||||
eventType: '',
|
eventType: 'auth-result',
|
||||||
imsi: '',
|
imsi: '',
|
||||||
startTime: '',
|
startTime: '',
|
||||||
endTime: '',
|
endTime: '',
|
||||||
@@ -72,7 +75,7 @@ function fnQueryReset() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**记录类型 */
|
/**记录类型 */
|
||||||
const eventTypes = ref<string[]>([]);
|
const eventTypes = ref<string[]>(['auth-result']);
|
||||||
|
|
||||||
/**查询记录类型变更 */
|
/**查询记录类型变更 */
|
||||||
function fnQueryEventTypeChange(value: any) {
|
function fnQueryEventTypeChange(value: any) {
|
||||||
@@ -397,15 +400,19 @@ function wsMessage(res: Record<string, any>) {
|
|||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
// 初始字典数据
|
// 初始字典数据
|
||||||
Promise.allSettled([
|
Promise.allSettled([
|
||||||
getDict('ue_event_mme_type'),
|
getDict('ue_auth_code'),
|
||||||
getDict('ue_event_mme_result'),
|
getDict('ue_event_type'),
|
||||||
|
getDict('ue_event_cm_state'),
|
||||||
])
|
])
|
||||||
.then(resArr => {
|
.then(resArr => {
|
||||||
if (resArr[0].status === 'fulfilled') {
|
if (resArr[0].status === 'fulfilled') {
|
||||||
dict.ueEventTypeMME = resArr[0].value;
|
dict.ueAauthCode = resArr[0].value;
|
||||||
}
|
}
|
||||||
if (resArr[1].status === 'fulfilled') {
|
if (resArr[1].status === 'fulfilled') {
|
||||||
dict.ueEventResultMME = resArr[1].value;
|
dict.ueEventType = resArr[1].value;
|
||||||
|
}
|
||||||
|
if (resArr[2].status === 'fulfilled') {
|
||||||
|
dict.ueEventCmState = resArr[2].value;
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.finally(() => {
|
.finally(() => {
|
||||||
@@ -439,7 +446,7 @@ onBeforeUnmount(() => {
|
|||||||
<a-select
|
<a-select
|
||||||
v-model:value="eventTypes"
|
v-model:value="eventTypes"
|
||||||
mode="multiple"
|
mode="multiple"
|
||||||
:options="dict.ueEventTypeMME"
|
:options="dict.ueEventType"
|
||||||
:placeholder="t('common.selectPlease')"
|
:placeholder="t('common.selectPlease')"
|
||||||
@change="fnQueryEventTypeChange"
|
@change="fnQueryEventTypeChange"
|
||||||
></a-select>
|
></a-select>
|
||||||
@@ -595,13 +602,24 @@ onBeforeUnmount(() => {
|
|||||||
>
|
>
|
||||||
<template #bodyCell="{ column, record }">
|
<template #bodyCell="{ column, record }">
|
||||||
<template v-if="column.key === 'eventType'">
|
<template v-if="column.key === 'eventType'">
|
||||||
<DictTag :options="dict.ueEventTypeMME" :value="record.eventType" />
|
<DictTag :options="dict.ueEventType" :value="record.eventType" />
|
||||||
</template>
|
</template>
|
||||||
<template v-if="column.key === 'result'">
|
<template v-if="column.key === 'result'">
|
||||||
|
<span v-if="record.eventType === 'auth-result'">
|
||||||
<DictTag
|
<DictTag
|
||||||
:options="dict.ueEventResultMME"
|
:options="dict.ueAauthCode"
|
||||||
:value="record.eventJSON.result"
|
:value="record.eventJSON.result"
|
||||||
/>
|
/>
|
||||||
|
</span>
|
||||||
|
<span v-if="record.eventType === 'detach'">
|
||||||
|
<span>{{ t('views.dashboard.ue.resultOk') }}</span>
|
||||||
|
</span>
|
||||||
|
<span v-if="record.eventType === 'cm-state'">
|
||||||
|
<DictTag
|
||||||
|
:options="dict.ueEventCmState"
|
||||||
|
:value="record.eventJSON.result"
|
||||||
|
/>
|
||||||
|
</span>
|
||||||
</template>
|
</template>
|
||||||
<template v-if="column.key === 'id'">
|
<template v-if="column.key === 'id'">
|
||||||
<a-space :size="8" align="center">
|
<a-space :size="8" align="center">
|
||||||
@@ -641,17 +659,25 @@ onBeforeUnmount(() => {
|
|||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<span>{{ t('views.dashboard.ue.eventType') }}: </span>
|
<span>{{ t('views.dashboard.ue.eventType') }}: </span>
|
||||||
<DictTag
|
<DictTag :options="dict.ueEventType" :value="record.eventType" />
|
||||||
:options="dict.ueEventTypeMME"
|
|
||||||
:value="record.eventType"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<span>{{ t('views.dashboard.ue.result') }}: </span>
|
<span>{{ t('views.dashboard.ue.result') }}: </span>
|
||||||
|
<span v-if="record.eventType === 'auth-result'">
|
||||||
<DictTag
|
<DictTag
|
||||||
:options="dict.ueEventResultMME"
|
:options="dict.ueAauthCode"
|
||||||
:value="record.eventJSON.result"
|
:value="record.eventJSON.result"
|
||||||
/>
|
/>
|
||||||
|
</span>
|
||||||
|
<span v-if="record.eventType === 'detach'">
|
||||||
|
{{ t('views.dashboard.ue.resultOK') }}
|
||||||
|
</span>
|
||||||
|
<span v-if="record.eventType === 'cm-state'">
|
||||||
|
<DictTag
|
||||||
|
:options="dict.ueEventCmState"
|
||||||
|
:value="record.eventJSON.result"
|
||||||
|
/>
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -19,18 +19,12 @@ let dict: {
|
|||||||
ueEventType: DictType[];
|
ueEventType: DictType[];
|
||||||
/**UE 事件CM状态 */
|
/**UE 事件CM状态 */
|
||||||
ueEventCmState: DictType[];
|
ueEventCmState: DictType[];
|
||||||
/**UE 事件类型MME */
|
|
||||||
ueEventTypeMME: DictType[];
|
|
||||||
/**UE 事件结果MME */
|
|
||||||
ueEventResultMME: DictType[];
|
|
||||||
} = reactive({
|
} = reactive({
|
||||||
cdrSipCode: [],
|
cdrSipCode: [],
|
||||||
cdrCallType: [],
|
cdrCallType: [],
|
||||||
ueAauthCode: [],
|
ueAauthCode: [],
|
||||||
ueEventType: [],
|
ueEventType: [],
|
||||||
ueEventCmState: [],
|
ueEventCmState: [],
|
||||||
ueEventTypeMME: [],
|
|
||||||
ueEventResultMME: [],
|
|
||||||
});
|
});
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
@@ -41,8 +35,6 @@ onMounted(() => {
|
|||||||
getDict('ue_auth_code'),
|
getDict('ue_auth_code'),
|
||||||
getDict('ue_event_type'),
|
getDict('ue_event_type'),
|
||||||
getDict('ue_event_cm_state'),
|
getDict('ue_event_cm_state'),
|
||||||
getDict('ue_event_mme_type'),
|
|
||||||
getDict('ue_event_mme_result'),
|
|
||||||
]).then(resArr => {
|
]).then(resArr => {
|
||||||
if (resArr[0].status === 'fulfilled') {
|
if (resArr[0].status === 'fulfilled') {
|
||||||
dict.cdrSipCode = resArr[0].value;
|
dict.cdrSipCode = resArr[0].value;
|
||||||
@@ -59,12 +51,6 @@ onMounted(() => {
|
|||||||
if (resArr[4].status === 'fulfilled') {
|
if (resArr[4].status === 'fulfilled') {
|
||||||
dict.ueEventCmState = resArr[4].value;
|
dict.ueEventCmState = resArr[4].value;
|
||||||
}
|
}
|
||||||
if (resArr[5].status === 'fulfilled') {
|
|
||||||
dict.ueEventTypeMME = resArr[5].value;
|
|
||||||
}
|
|
||||||
if (resArr[6].status === 'fulfilled') {
|
|
||||||
dict.ueEventResultMME = resArr[6].value;
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
@@ -173,6 +159,7 @@ onMounted(() => {
|
|||||||
TAC ID: <span>{{ item.data.tacID }}</span>
|
TAC ID: <span>{{ item.data.tacID }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div v-if="item.type === 'auth-result'">
|
<div v-if="item.type === 'auth-result'">
|
||||||
{{ t('views.dashboard.overview.userActivity.result') }}:
|
{{ t('views.dashboard.overview.userActivity.result') }}:
|
||||||
<span>
|
<span>
|
||||||
@@ -200,7 +187,7 @@ onMounted(() => {
|
|||||||
<div>
|
<div>
|
||||||
{{ t('views.dashboard.overview.userActivity.type') }}:
|
{{ t('views.dashboard.overview.userActivity.type') }}:
|
||||||
<span>
|
<span>
|
||||||
<DictTag :options="dict.ueEventTypeMME" :value="item.type" />
|
<DictTag :options="dict.ueEventType" :value="item.type" />
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
@@ -216,7 +203,7 @@ onMounted(() => {
|
|||||||
|
|
||||||
<div class="card-ue-w33" v-if="item.type === 'auth-result'">
|
<div class="card-ue-w33" v-if="item.type === 'auth-result'">
|
||||||
<div>
|
<div>
|
||||||
GNB ID: <span>{{ item.data.gNBID }}</span>
|
ENB ID: <span>{{ item.data.eNBID }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
Cell ID: <span>{{ item.data.cellID }}</span>
|
Cell ID: <span>{{ item.data.cellID }}</span>
|
||||||
@@ -228,20 +215,17 @@ onMounted(() => {
|
|||||||
<div v-if="item.type === 'auth-result'">
|
<div v-if="item.type === 'auth-result'">
|
||||||
{{ t('views.dashboard.overview.userActivity.result') }}:
|
{{ t('views.dashboard.overview.userActivity.result') }}:
|
||||||
<span>
|
<span>
|
||||||
<DictTag :options="dict.ueAauthCode" :value="item.data.authCode" />
|
<DictTag :options="dict.ueAauthCode" :value="item.data.result" />
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="item.type === 'detach'">
|
<div v-if="item.type === 'detach'">
|
||||||
{{ t('views.dashboard.overview.userActivity.result') }}:
|
{{ t('views.dashboard.overview.userActivity.result') }}:
|
||||||
<span>{{ t('views.dashboard.overview.userActivity.resultOK') }}</span>
|
<span>{{ t('views.dashboard.overview.userActivity.resultOK') }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-ue-w33">
|
<div class="card-ue-w33" v-if="item.type === 'cm-state'">
|
||||||
{{ t('views.dashboard.overview.userActivity.result') }}:
|
{{ t('views.dashboard.overview.userActivity.result') }}:
|
||||||
<span>
|
<span>
|
||||||
<DictTag
|
<DictTag :options="dict.ueEventCmState" :value="item.data.result" />
|
||||||
:options="dict.ueEventResultMME"
|
|
||||||
:value="item.data.result"
|
|
||||||
/>
|
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -199,9 +199,10 @@ export default function useWS() {
|
|||||||
*
|
*
|
||||||
* 指标UPF (GroupID:12)
|
* 指标UPF (GroupID:12)
|
||||||
* AMF_UE会话事件(GroupID:1010)
|
* AMF_UE会话事件(GroupID:1010)
|
||||||
|
* MME_UE会话事件(GroupID:1011)
|
||||||
* IMS_CDR会话事件(GroupID:1005)
|
* IMS_CDR会话事件(GroupID:1005)
|
||||||
*/
|
*/
|
||||||
subGroupID: '12,1010,1005',
|
subGroupID: '12,1010,1011,1005',
|
||||||
},
|
},
|
||||||
onmessage: wsMessage,
|
onmessage: wsMessage,
|
||||||
onerror: wsError,
|
onerror: wsError,
|
||||||
|
|||||||
Reference in New Issue
Block a user