fix: UE事件MME 看板推送显示/类型结果保持和AMF一致

This commit is contained in:
TsMask
2024-06-19 16:57:07 +08:00
parent 1ec374eb26
commit e1548d2c98
3 changed files with 62 additions and 51 deletions

View File

@@ -23,13 +23,16 @@ const queue = new PQueue({ concurrency: 1, autoStart: true });
/**字典数据 */
let dict: {
/**UE 事件类型MME */
ueEventTypeMME: DictType[];
/**UE 事件结果MME */
ueEventResultMME: DictType[];
/**UE 事件认证代码类型 */
ueAauthCode: DictType[];
/**UE 事件类型 */
ueEventType: DictType[];
/**UE 事件CM状态 */
ueEventCmState: DictType[];
} = reactive({
ueEventTypeMME: [],
ueEventResultMME: [],
ueAauthCode: [],
ueEventType: [],
ueEventCmState: [],
});
/**开始结束时间 */
@@ -40,7 +43,7 @@ let queryParams = reactive({
/**网元类型 */
neType: 'MME',
neId: '001',
eventType: '',
eventType: 'auth-result',
imsi: '',
sortField: 'timestamp',
sortOrder: 'desc',
@@ -56,9 +59,9 @@ let queryParams = reactive({
/**查询参数重置 */
function fnQueryReset() {
eventTypes.value = [];
eventTypes.value = ['auth-result'];
queryParams = Object.assign(queryParams, {
eventType: '',
eventType: 'auth-result',
imsi: '',
startTime: '',
endTime: '',
@@ -72,7 +75,7 @@ function fnQueryReset() {
}
/**记录类型 */
const eventTypes = ref<string[]>([]);
const eventTypes = ref<string[]>(['auth-result']);
/**查询记录类型变更 */
function fnQueryEventTypeChange(value: any) {
@@ -397,15 +400,19 @@ function wsMessage(res: Record<string, any>) {
onMounted(() => {
// 初始字典数据
Promise.allSettled([
getDict('ue_event_mme_type'),
getDict('ue_event_mme_result'),
getDict('ue_auth_code'),
getDict('ue_event_type'),
getDict('ue_event_cm_state'),
])
.then(resArr => {
if (resArr[0].status === 'fulfilled') {
dict.ueEventTypeMME = resArr[0].value;
dict.ueAauthCode = resArr[0].value;
}
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(() => {
@@ -439,7 +446,7 @@ onBeforeUnmount(() => {
<a-select
v-model:value="eventTypes"
mode="multiple"
:options="dict.ueEventTypeMME"
:options="dict.ueEventType"
:placeholder="t('common.selectPlease')"
@change="fnQueryEventTypeChange"
></a-select>
@@ -595,13 +602,24 @@ onBeforeUnmount(() => {
>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'eventType'">
<DictTag :options="dict.ueEventTypeMME" :value="record.eventType" />
<DictTag :options="dict.ueEventType" :value="record.eventType" />
</template>
<template v-if="column.key === 'result'">
<span v-if="record.eventType === 'auth-result'">
<DictTag
:options="dict.ueEventResultMME"
:options="dict.ueAauthCode"
: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 v-if="column.key === 'id'">
<a-space :size="8" align="center">
@@ -641,17 +659,25 @@ onBeforeUnmount(() => {
</div>
<div>
<span>{{ t('views.dashboard.ue.eventType') }}: </span>
<DictTag
:options="dict.ueEventTypeMME"
:value="record.eventType"
/>
<DictTag :options="dict.ueEventType" :value="record.eventType" />
</div>
<div>
<span>{{ t('views.dashboard.ue.result') }}: </span>
<span v-if="record.eventType === 'auth-result'">
<DictTag
:options="dict.ueEventResultMME"
:options="dict.ueAauthCode"
: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>
</template>

View File

@@ -19,18 +19,12 @@ let dict: {
ueEventType: DictType[];
/**UE 事件CM状态 */
ueEventCmState: DictType[];
/**UE 事件类型MME */
ueEventTypeMME: DictType[];
/**UE 事件结果MME */
ueEventResultMME: DictType[];
} = reactive({
cdrSipCode: [],
cdrCallType: [],
ueAauthCode: [],
ueEventType: [],
ueEventCmState: [],
ueEventTypeMME: [],
ueEventResultMME: [],
});
onMounted(() => {
@@ -41,8 +35,6 @@ onMounted(() => {
getDict('ue_auth_code'),
getDict('ue_event_type'),
getDict('ue_event_cm_state'),
getDict('ue_event_mme_type'),
getDict('ue_event_mme_result'),
]).then(resArr => {
if (resArr[0].status === 'fulfilled') {
dict.cdrSipCode = resArr[0].value;
@@ -59,12 +51,6 @@ onMounted(() => {
if (resArr[4].status === 'fulfilled') {
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>
@@ -173,6 +159,7 @@ onMounted(() => {
TAC ID: <span>{{ item.data.tacID }}</span>
</div>
</div>
<div v-if="item.type === 'auth-result'">
{{ t('views.dashboard.overview.userActivity.result') }}:&nbsp;
<span>
@@ -200,7 +187,7 @@ onMounted(() => {
<div>
{{ t('views.dashboard.overview.userActivity.type') }}:&nbsp;
<span>
<DictTag :options="dict.ueEventTypeMME" :value="item.type" />
<DictTag :options="dict.ueEventType" :value="item.type" />
</span>
</div>
<div>
@@ -216,7 +203,7 @@ onMounted(() => {
<div class="card-ue-w33" v-if="item.type === 'auth-result'">
<div>
GNB ID: <span>{{ item.data.gNBID }}</span>
ENB ID: <span>{{ item.data.eNBID }}</span>
</div>
<div>
Cell ID: <span>{{ item.data.cellID }}</span>
@@ -228,20 +215,17 @@ onMounted(() => {
<div v-if="item.type === 'auth-result'">
{{ t('views.dashboard.overview.userActivity.result') }}:&nbsp;
<span>
<DictTag :options="dict.ueAauthCode" :value="item.data.authCode" />
<DictTag :options="dict.ueAauthCode" :value="item.data.result" />
</span>
</div>
<div v-if="item.type === 'detach'">
{{ t('views.dashboard.overview.userActivity.result') }}:
<span>{{ t('views.dashboard.overview.userActivity.resultOK') }}</span>
</div>
<div class="card-ue-w33">
<div class="card-ue-w33" v-if="item.type === 'cm-state'">
{{ t('views.dashboard.overview.userActivity.result') }}:&nbsp;
<span>
<DictTag
:options="dict.ueEventResultMME"
:value="item.data.result"
/>
<DictTag :options="dict.ueEventCmState" :value="item.data.result" />
</span>
</div>
</div>

View File

@@ -199,9 +199,10 @@ export default function useWS() {
*
* 指标UPF (GroupID:12)
* AMF_UE会话事件(GroupID:1010)
* MME_UE会话事件(GroupID:1011)
* IMS_CDR会话事件(GroupID:1005)
*/
subGroupID: '12,1010,1005',
subGroupID: '12,1010,1011,1005',
},
onmessage: wsMessage,
onerror: wsError,