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