From a09f984cbe2369e13d8694e91c4f8165ec6c2ba9 Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期三, 20 八月 2025 14:05:10 +0800 Subject: [PATCH] 动态溯源模块优化 --- src/views/sourcetrace/SourceTrace.vue | 45 ++++++++++++++++++++++++++++----------------- 1 files changed, 28 insertions(+), 17 deletions(-) diff --git a/src/views/sourcetrace/SourceTrace.vue b/src/views/sourcetrace/SourceTrace.vue index 2ef9353..73dcd07 100644 --- a/src/views/sourcetrace/SourceTrace.vue +++ b/src/views/sourcetrace/SourceTrace.vue @@ -200,7 +200,10 @@ } // 鍒ゆ柇鍦烘櫙绫诲瀷鏄惁閫変腑 - if (v.pollutedSource.sceneList.length == 0) { + if ( + v.pollutedSource == undefined || + v.pollutedSource.sceneList.length == 0 + ) { b3 = selectedSceneTypes.value.indexOf(NO_SCENE) != -1; } else { b3 = @@ -306,25 +309,29 @@ } // 绛涢�夊満鏅被鍨� - if (objData.pollutedSource.sceneList.length == 0) { - // 鑻ユ病鏈夋壘鍒伴闄╂簮鏃讹紝灏嗚鍒嗙被璁惧畾涓簄ull - if (sceneOptions.value.findIndex((v) => v.value == NO_SCENE) == -1) { - sceneOptions.value.push({ - label: '鏈煡', - value: NO_SCENE - }); - selectedSceneTypes.value.push(NO_SCENE); - } - } else { - objData.pollutedSource.sceneList.forEach((s) => { - if (sceneOptions.value.findIndex((v) => v.value == s.typeId) == -1) { + if (objData.pollutedSource != undefined) { + if (objData.pollutedSource.sceneList.length == 0) { + // 鑻ユ病鏈夋壘鍒伴闄╂簮鏃讹紝灏嗚鍒嗙被璁惧畾涓簄ull + if (sceneOptions.value.findIndex((v) => v.value == NO_SCENE) == -1) { sceneOptions.value.push({ - label: s.type, - value: s.typeId + label: '鏈煡', + value: NO_SCENE }); - selectedSceneTypes.value.push(s.typeId); + selectedSceneTypes.value.push(NO_SCENE); } - }); + } else { + objData.pollutedSource.sceneList.forEach((s) => { + if ( + sceneOptions.value.findIndex((v) => v.value == s.typeId) == -1 + ) { + sceneOptions.value.push({ + label: s.type, + value: s.typeId + }); + selectedSceneTypes.value.push(s.typeId); + } + }); + } } // case '2': // break; @@ -355,6 +362,10 @@ dataAnalysisApi .fetchPollutionTraceHistory(props.missionCode) .then((res) => { + factorOptions.value = []; + selectedFactorTypes.value = []; + sceneOptions.value = []; + selectedSceneTypes.value = []; const objList = JSON.parse(res.data); objList.forEach((obj) => { obj._type = obj.msgType + ''; -- Gitblit v1.9.3