From c2e36c45578e63ad17c5e258c92d62d9ae03dadb Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期五, 30 五月 2025 11:55:52 +0800 Subject: [PATCH] Merge branch 'master' of ssh://114.215.109.124:29418/underway-vue --- src/views/historymode/HistoryMode.vue | 34 +++++++++++++++++++++++++++++++--- 1 files changed, 31 insertions(+), 3 deletions(-) diff --git a/src/views/historymode/HistoryMode.vue b/src/views/historymode/HistoryMode.vue index 2d2a20f..2ced9f5 100644 --- a/src/views/historymode/HistoryMode.vue +++ b/src/views/historymode/HistoryMode.vue @@ -4,7 +4,7 @@ <SearchBar v-show="status == 0" :search-time="searchTime" - :loading="loading" + :loading="loading || thirdPartyLoading" @search="onSearch" ></SearchBar> <TrajectoryState v-show="status != 0" :status="status"></TrajectoryState> @@ -74,6 +74,7 @@ import { ElMessage } from 'element-plus'; import { fetchHistoryData } from '@/utils/factor/data'; import dataAnalysisApi from '@/api/dataAnalysisApi'; +import thirdPartyDataApi from '@/api/thirdPartyDataApi'; import { mapStores } from 'pinia'; import { useSceneStore } from '@/stores/scene'; @@ -108,7 +109,10 @@ // 杞ㄨ抗鍔ㄧ敾鐘舵�� status: 0, // 鏄惁椤甸潰宸茶烦杞� - isUnmounted: false + isUnmounted: false, + // 绗笁鏂规暟鎹幏鍙栨槸鍚﹀皾璇� + isFetchThirdParty: false, + thirdPartyLoading: false }; }, watch: { @@ -236,9 +240,33 @@ endTime, page, perPage: pageSize - }).then((res) => this.onFetchData(deviceType, res.data)); + }).then((res) => { + this.onFetchData(deviceType, res.data); + if ( + res.data.length == 0 && + this.isFetchThirdParty != mission.missionCode + ) { + this.onThirdPartyFetch(option); + } + }); }); }, + onThirdPartyFetch(option) { + const { mission } = option; + if (import.meta.env.VITE_DATA_MODE == 'jingan') { + this.thirdPartyLoading = true; + this.isFetchThirdParty = mission.missionCode; + // 閫氱煡鏈嶅姟绔惎鍔ㄤ换鍔¤寖鍥村唴鐨勭涓夋柟鏁版嵁鑾峰彇浠诲姟 + thirdPartyDataApi + .fetchMissionData(mission.missionCode) + .then((res) => { + if (res.data) { + this.onSearch(option); + } + }) + .finally(() => (this.thirdPartyLoading = false)); + } + }, handleClick() { const { missionCode } = this.mission; dataAnalysisApi.pollutionTrace(missionCode).then((res) => { -- Gitblit v1.9.3