fix: 拓扑状态刷新定时器改调度器

This commit is contained in:
TsMask
2024-03-21 10:10:46 +08:00
parent d15b75e8fd
commit 2a622aa1d6
3 changed files with 21 additions and 22 deletions

View File

@@ -1,5 +1,5 @@
<script setup lang="ts"> <script setup lang="ts">
import { onMounted, ref, onBeforeUnmount, nextTick, watch } from 'vue'; import { onMounted, ref, nextTick, watch } from 'vue';
import * as echarts from 'echarts/core'; import * as echarts from 'echarts/core';
import { GridComponent, GridComponentOption } from 'echarts/components'; import { GridComponent, GridComponentOption } from 'echarts/components';
import { import {

View File

@@ -65,14 +65,13 @@ const viewportDom = ref<HTMLElement | null>(null);
const { isFullscreen, toggle } = useFullscreen(viewportDom); const { isFullscreen, toggle } = useFullscreen(viewportDom);
/**10s调度器 */ /**10s调度器 */
const stateInterval = ref<any>(null); const interval10s = ref<any>(null);
/**网元状态定时器 */ /**5s调度器 */
const stateTimeout = ref<any>(null); const interval5s = ref<any>(null);
/**查询网元状态 */ /**查询网元状态 */
function fnGetState() { function fnGetNeState() {
clearTimeout(stateTimeout.value);
// 获取节点状态 // 获取节点状态
for (const node of graphState.data.nodes) { for (const node of graphState.data.nodes) {
if (notNeNodes.includes(node.id)) continue; if (notNeNodes.includes(node.id)) continue;
@@ -91,11 +90,6 @@ function fnGetState() {
}, },
}); });
} }
stateTimeout.value = setTimeout(() => {
fnGetSkim(); // 获取概览信息
fnGetState();
}, 5_000);
} }
/**获取概览信息 */ /**获取概览信息 */
@@ -160,14 +154,14 @@ async function fnGetSkim() {
/**初始数据函数 */ /**初始数据函数 */
function loadData() { function loadData() {
fnGetState(); // 获取网元状态 fnGetNeState(); // 获取网元状态
cdrEventSend(); cdrEventSend();
ueEventSend(); ueEventSend();
upfTFSend(0); upfTFSend(0);
upfTFSend(7); upfTFSend(7);
upfTFSend(30); upfTFSend(30);
stateInterval.value = setInterval(() => { interval10s.value = setInterval(() => {
upfTFActive.value = upfTFActive.value >= 2 ? 0 : upfTFActive.value + 1; upfTFActive.value = upfTFActive.value >= 2 ? 0 : upfTFActive.value + 1;
if (upfTFActive.value === 0) { if (upfTFActive.value === 0) {
upfTFSend(7); upfTFSend(7);
@@ -177,6 +171,11 @@ function loadData() {
upfTFSend(0); upfTFSend(0);
} }
}, 10_000); }, 10_000);
interval5s.value = setInterval(() => {
fnGetSkim(); // 获取概览信息
fnGetNeState(); // 获取网元状态
}, 5_000);
} }
/**栏目信息跳转 */ /**栏目信息跳转 */
@@ -191,8 +190,8 @@ onMounted(() => {
}); });
onBeforeUnmount(() => { onBeforeUnmount(() => {
clearTimeout(stateTimeout.value); clearInterval(interval10s.value);
clearTimeout(stateInterval.value); clearInterval(interval5s.value);
}); });
</script> </script>

View File

@@ -328,16 +328,18 @@ function fnGraphDataLoad(reload: boolean = false) {
} else { } else {
handleRanderGraph(graphG6Dom.value, graphState.data); handleRanderGraph(graphG6Dom.value, graphState.data);
} }
fnGetState();
interval10s.value = setInterval(() => {
fnGetState(); // 获取网元状态 fnGetState(); // 获取网元状态
}, 10_000);
}); });
} }
/**网元状态定时器 */ /**网元状态调度器 */
const stateTimeout = ref<any>(null); const interval10s = ref<any>(null);
/**查询网元状态 */ /**查询网元状态 */
async function fnGetState() { async function fnGetState() {
clearTimeout(stateTimeout.value);
// 获取节点状态 // 获取节点状态
for (const node of graphState.data.nodes) { for (const node of graphState.data.nodes) {
if (notNeNodes.includes(node.id)) continue; if (notNeNodes.includes(node.id)) continue;
@@ -352,8 +354,6 @@ async function fnGetState() {
}, },
}); });
} }
stateTimeout.value = setTimeout(() => fnGetState(), 30_000);
} }
/**接收数据后回调 */ /**接收数据后回调 */
@@ -472,7 +472,7 @@ onMounted(() => {
onBeforeUnmount(() => { onBeforeUnmount(() => {
ws.close(); ws.close();
clearTimeout(stateTimeout.value); clearInterval(interval10s.value);
}); });
</script> </script>