From c66c640f750bd42a93d87c6ed217720612cb9bb1 Mon Sep 17 00:00:00 2001 From: TsMask <340112800@qq.com> Date: Fri, 11 Oct 2024 15:47:26 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=9C=8B=E6=9D=BF=E6=80=BB=E6=B5=81?= =?UTF-8?q?=E9=87=8F24=E5=B0=8F=E6=97=B6=E5=AE=9E=E6=97=B6=E7=B4=AF?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../overview/hooks/useUPFTotalFlow.ts | 81 ++++++++++--------- src/views/dashboard/overview/hooks/useWS.ts | 41 +++------- src/views/dashboard/overview/index.vue | 32 ++++---- 3 files changed, 71 insertions(+), 83 deletions(-) diff --git a/src/views/dashboard/overview/hooks/useUPFTotalFlow.ts b/src/views/dashboard/overview/hooks/useUPFTotalFlow.ts index 8a9fdacb..29aebbe9 100644 --- a/src/views/dashboard/overview/hooks/useUPFTotalFlow.ts +++ b/src/views/dashboard/overview/hooks/useUPFTotalFlow.ts @@ -36,47 +36,63 @@ export function upfFlowParse(data: Record) { upfFlowData.value.lineYDown.shift(); upfFlowData.value.cap -= 1; } + // UPF-总流量数0天 当天24小时 + upfTFParse('0', { + up: upfTotalFlow.value['0'].up + +data['UPF.03'], + down: upfTotalFlow.value['0'].down + +data['UPF.06'], + }); } type TFType = { /**上行 N3 */ - up: string; + up: number; + upFrom: string; /**下行 N6 */ - down: string; + down: number; + downFrom: string; /**请求标记 */ requestFlag: boolean; }; /**UPF-总流量数 */ -export const upfTotalFlow = ref([ - // 0天 当天24小时 - { - up: '0 B', - down: '0 B', +export const upfTotalFlow = ref>({ + '0': { + up: 0, + upFrom: '0 B', + down: 0, + downFrom: '0 B', requestFlag: false, }, - { - up: '0 B', - down: '0 B', + '7': { + up: 0, + upFrom: '0 B', + down: 0, + downFrom: '0 B', requestFlag: false, }, - { - up: '0 B', - down: '0 B', + '30': { + up: 0, + upFrom: '0 B', + down: 0, + downFrom: '0 B', requestFlag: false, }, -]); +}); /**UPF-总流量数 数据解析 */ -export function upfTFParse(data: Record) { +export function upfTFParse(day: string, data: Record) { let { up, down } = data; - up = parseSizeFromBits(up); - down = parseSizeFromBits(down); - return { up, down }; + upfTotalFlow.value[day] = { + up: up, + upFrom: parseSizeFromBits(up), + down: down, + downFrom: parseSizeFromBits(down), + requestFlag: false, + }; } /**UPF-总流量数 选中 */ -export const upfTFActive = ref(0); +export const upfTFActive = ref('0'); /**属性复位 */ export function upfTotalFlowReset() { @@ -86,23 +102,14 @@ export function upfTotalFlowReset() { lineYDown: [], cap: 0, }; - upfTotalFlow.value = [ - // 0天 当天24小时 - { - up: '0 B', - down: '0 B', + for (const key of Object.keys(upfTotalFlow.value)) { + upfTotalFlow.value[key] = { + up: 0, + upFrom: '0 B', + down: 0, + downFrom: '0 B', requestFlag: false, - }, - { - up: '0 B', - down: '0 B', - requestFlag: false, - }, - { - up: '0 B', - down: '0 B', - requestFlag: false, - }, - ]; - upfTFActive.value = 0; + }; + } + upfTFActive.value = '0'; } diff --git a/src/views/dashboard/overview/hooks/useWS.ts b/src/views/dashboard/overview/hooks/useWS.ts index c9adfd26..9afb6959 100644 --- a/src/views/dashboard/overview/hooks/useWS.ts +++ b/src/views/dashboard/overview/hooks/useWS.ts @@ -25,12 +25,6 @@ export default function useWS() { ws.send(data); } - /**接收数据后回调 */ - function wsError(ev: any) { - // 接收数据后回调 - console.error(ev); - } - /**接收数据后回调 */ function wsMessage(res: Record) { // console.log(res); @@ -69,22 +63,13 @@ export default function useWS() { break; //UPF-总流量数 case 'upf_001_0': - const v0 = upfTFParse(data); - upfTotalFlow.value[0].up = v0.up; - upfTotalFlow.value[0].down = v0.down; - upfTotalFlow.value[0].requestFlag = false; + upfTFParse('0', data); break; case 'upf_001_7': - const v7 = upfTFParse(data); - upfTotalFlow.value[1].up = v7.up; - upfTotalFlow.value[1].down = v7.down; - upfTotalFlow.value[1].requestFlag = false; + upfTFParse('7', data); break; case 'upf_001_30': - const v30 = upfTFParse(data); - upfTotalFlow.value[2].up = v30.up; - upfTotalFlow.value[2].down = v30.down; - upfTotalFlow.value[2].requestFlag = false; + upfTFParse('30', data); break; } @@ -121,20 +106,12 @@ export default function useWS() { } /**UPF-总流量数 发消息*/ - function upfTFSend(day: 0 | 7 | 30) { + function upfTFSend(day: '0' | '7' | '30') { // 请求标记检查避免重复发送 - let index = 0; - if (day === 0) { - index = 0; - } else if (day === 7) { - index = 1; - } else if (day === 30) { - index = 2; - } - if (upfTotalFlow.value[index].requestFlag) { + if (upfTotalFlow.value[day].requestFlag) { return; } - upfTotalFlow.value[index].requestFlag = true; + upfTotalFlow.value[day].requestFlag = true; ws.send({ requestId: `upf_001_${day}`, @@ -142,7 +119,7 @@ export default function useWS() { data: { neType: 'UPF', neId: '001', - day: day, + day: Number(day), }, }); } @@ -205,7 +182,9 @@ export default function useWS() { subGroupID: '12_001,1010_001,1011_001,1005_001', }, onmessage: wsMessage, - onerror: wsError, + onerror: (ev: any) => { + console.error(ev); + }, }; ws.connect(options); }); diff --git a/src/views/dashboard/overview/index.vue b/src/views/dashboard/overview/index.vue index 27716a99..bcf03188 100644 --- a/src/views/dashboard/overview/index.vue +++ b/src/views/dashboard/overview/index.vue @@ -156,19 +156,21 @@ async function fnGetSkim() { function loadData() { fnGetNeState(); // 获取网元状态 userActivitySend(); - upfTFSend(0); - upfTFSend(7); - upfTFSend(30); + upfTFSend('0'); + upfTFSend('7'); + upfTFSend('30'); clearInterval(interval10s.value); interval10s.value = setInterval(() => { - upfTFActive.value = upfTFActive.value >= 2 ? 0 : upfTFActive.value + 1; - if (upfTFActive.value === 0) { - upfTFSend(7); - } else if (upfTFActive.value === 1) { - upfTFSend(30); - } else if (upfTFActive.value === 2) { - upfTFSend(0); + if (upfTFActive.value === '0') { + upfTFSend('7'); + upfTFActive.value = '7'; + } else if (upfTFActive.value === '7') { + upfTFSend('30'); + upfTFActive.value = '30'; + } else if (upfTFActive.value === '30') { + upfTFSend('0'); + upfTFActive.value = '0'; } }, 10_000); @@ -411,12 +413,12 @@ onBeforeUnmount(() => {
@@ -436,14 +438,14 @@ onBeforeUnmount(() => { {{ t('views.dashboard.overview.upfFlowTotal.up') }} -

{{ upfTotalFlow[upfTFActive].up }}

+

{{ upfTotalFlow[upfTFActive].upFrom }}

{{ t('views.dashboard.overview.upfFlowTotal.down') }} -

{{ upfTotalFlow[upfTFActive].down }}

+

{{ upfTotalFlow[upfTFActive].downFrom }}