) => {
Reflect.set(node, 'neState', { online: false });
+ // 图片路径处理
+ if (node.img) node.img = parseBasePath(node.img);
+ if (node.icon.show && node.icon?.img) {
+ node.icon.img = parseBasePath(node.icon.img);
+ }
+ // 遍历是否有网元数据
const nodeID: string = node.id;
const hasNe = res.neList.some(ne => {
Reflect.set(node, 'neInfo', ne.neType === nodeID ? ne : {});
diff --git a/src/views/dashboard/overview/index.vue b/src/views/dashboard/overview/index.vue
index ebf91f6f..aedba319 100644
--- a/src/views/dashboard/overview/index.vue
+++ b/src/views/dashboard/overview/index.vue
@@ -176,6 +176,7 @@ function loadData() {
clearInterval(interval10s.value);
interval10s.value = setInterval(() => {
+ if (!interval10s.value) return
if (upfTFActive.value === '0') {
upfTFSend('7');
upfTFActive.value = '7';
@@ -190,6 +191,7 @@ function loadData() {
clearInterval(interval5s.value);
interval5s.value = setInterval(() => {
+ if (!interval5s.value) return
fnGetSkim(); // 获取概览信息
fnGetNeState(); // 获取网元状态
}, 5_000);
diff --git a/src/views/dashboard/smfCDR/index.vue b/src/views/dashboard/smfCDR/index.vue
index 652cae9c..23e3a37d 100644
--- a/src/views/dashboard/smfCDR/index.vue
+++ b/src/views/dashboard/smfCDR/index.vue
@@ -1,10 +1,10 @@
diff --git a/src/views/monitor/topologyArchitecture/index.vue b/src/views/monitor/topologyArchitecture/index.vue
index ecb17082..289a4ba1 100644
--- a/src/views/monitor/topologyArchitecture/index.vue
+++ b/src/views/monitor/topologyArchitecture/index.vue
@@ -6,7 +6,7 @@ import {
RESULT_CODE_SUCCESS,
} from '@/constants/result-constants';
import { listAllNeInfo } from '@/api/ne/neInfo';
-import { message } from 'ant-design-vue/lib';
+import { message } from 'ant-design-vue/es';
import { getGraphData } from '@/api/monitor/topology';
import { parseDateToStr } from '@/utils/date-utils';
import { Graph, GraphData, Menu, Tooltip } from '@antv/g6';
@@ -24,6 +24,7 @@ import {
import useNeOptions from '@/views/ne/neInfo/hooks/useNeOptions';
import useI18n from '@/hooks/useI18n';
import { OptionsType, WS } from '@/plugins/ws-websocket';
+import { parseBasePath } from '@/plugins/file-static-url';
const { t } = useI18n();
const { fnNeRestart, fnNeStop, fnNeLogFile } = useNeOptions();
const ws = new WS();
@@ -165,7 +166,7 @@ const graphNodeTooltip = new Tooltip({
${t('views.monitor.topology.expiryDate')}:
${neState.expire ?? '--'}
-
+
`;
},
@@ -291,6 +292,11 @@ function fnGraphDataLoad(reload: boolean = false) {
const nf: Record[] = nodes.filter(
(node: Record) => {
Reflect.set(node, 'neState', { online: false });
+ // 图片路径处理
+ if (node.img) node.img = parseBasePath(node.img);
+ if (node.icon.show && node.icon?.img)
+ node.icon.img = parseBasePath(node.icon.img);
+ // 遍历是否有网元数据
const nodeID: string = node.id;
const hasNe = res.neList.some(ne => {
Reflect.set(node, 'neInfo', ne.neType === nodeID ? ne : {});
@@ -347,11 +353,11 @@ function fnGraphDataLoad(reload: boolean = false) {
}
clearInterval(interval10s.value);
interval10s.value = null;
- fnGetState().finally(() => {
- interval10s.value = setInterval(() => {
- fnGetState(); // 获取网元状态
- }, 10_000);
- });
+ fnGetState();
+ interval10s.value = setInterval(async () => {
+ if (!interval10s.value) return;
+ fnGetState(); // 获取网元状态
+ }, 20_000);
});
}
@@ -359,7 +365,7 @@ function fnGraphDataLoad(reload: boolean = false) {
const interval10s = ref(null);
/**查询网元状态 */
-async function fnGetState() {
+function fnGetState() {
// 获取节点状态
for (const node of graphState.data.nodes) {
if (notNeNodes.includes(node.id)) continue;
@@ -506,16 +512,20 @@ onBeforeUnmount(() => {
>
-
+
-
+
{{ t('common.reloadText') }}
diff --git a/src/views/monitor/topologyBuild/components/GraphEditModal.vue b/src/views/monitor/topologyBuild/components/GraphEditModal.vue
index 79bc35f3..f3b782fc 100644
--- a/src/views/monitor/topologyBuild/components/GraphEditModal.vue
+++ b/src/views/monitor/topologyBuild/components/GraphEditModal.vue
@@ -1,5 +1,6 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/ne/neHost/index.vue b/src/views/ne/neHost/index.vue
index 31c0c4ae..98fbff28 100644
--- a/src/views/ne/neHost/index.vue
+++ b/src/views/ne/neHost/index.vue
@@ -1,24 +1,20 @@
@@ -799,117 +1142,89 @@ const applyTwoColumnLayout = () => {
-
+
-
+
-
-
-
-
-
-
-
-
- {{ t('views.perfManage.kpiKeyTarget.saveLayout') }}
-
-
-
-
- {{ t('views.perfManage.kpiKeyTarget.layout1') }}
- {{ t('views.perfManage.kpiKeyTarget.layout2') }}
- {{ t('views.perfManage.kpiKeyTarget.layout3') }}
-
-
-
-
-
- {{ t('views.perfManage.kpiKeyTarget.restoreSaved') }}
-
-
-
-
- {{ t('views.perfManage.kpiKeyTarget.layout1') }}
- {{ t('views.perfManage.kpiKeyTarget.layout2') }}
- {{ t('views.perfManage.kpiKeyTarget.layout3') }}
-
-
-
-
- {{ t('views.perfManage.kpiKeyTarget.fullWidthLayout') }}
-
-
- {{ t('views.perfManage.kpiKeyTarget.twoColumnLayout') }}
-
+
-
-
+
-
-
-
-
diff --git a/src/views/perfManage/perfData/index.vue b/src/views/perfManage/perfData/index.vue
index c17382a0..9d3ce85a 100644
--- a/src/views/perfManage/perfData/index.vue
+++ b/src/views/perfManage/perfData/index.vue
@@ -1,9 +1,9 @@
-
+
@@ -111,7 +111,8 @@ onMounted(() => {
diff --git a/src/views/tool/terminal/index.vue b/src/views/tool/terminal/index.vue
index 24fa44a3..54b9252b 100644
--- a/src/views/tool/terminal/index.vue
+++ b/src/views/tool/terminal/index.vue
@@ -1,16 +1,29 @@