From 38ff09bd2a638bc43a365efe0390cc3510d62e68 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期一, 09 六月 2025 17:36:37 +0800
Subject: [PATCH] 2025.6.9 功能编写中

---
 src/stores/subtask.js |   42 +++++++++++++++++++++++++++++++-----------
 1 files changed, 31 insertions(+), 11 deletions(-)

diff --git a/src/stores/subtask.js b/src/stores/subtask.js
index aaf96cb..b43b07a 100644
--- a/src/stores/subtask.js
+++ b/src/stores/subtask.js
@@ -11,6 +11,8 @@
 
 // 宸℃煡浠诲姟
 export const useSubtaskStore = defineStore('subtask', () => {
+  const allTask = ref(null)
+  const onFetchAllTask = []
   // 鎬讳换鍔′俊鎭�
   const taskInfo = ref(null)
   // 褰撴湡鎵�鏈夊贰鏌ョ粺璁′俊鎭�
@@ -24,18 +26,35 @@
 
   function fetchTopTaskProgress(area) {
     subtaskLoading.value = true
-    taskApi.fetchTopTaskProgress(area).then((res) => {
-      if (res.data.length == 0) return
-      const data = res.data[0]
-      // 瀛樺偍涓哄叏灞�鏁版嵁
-      setSummary(data)
-      subtaskLoading.value = false
-      // 缁樺埗鍦板浘鏍囪
-      marks.createLabelMarks(scene_1, unref(data.subTaskSummary), (v) => {
-        mapStore.focusMarker = v
+    taskApi
+      .fetchTopTaskProgress(area)
+      .then((res) => {
+        if (res.data.length == 0) return
+
+        allTask.value = res.data
+        if (onFetchAllTask.length > 0) {
+          onFetchAllTask.forEach((e) => {
+            e(allTask.value)
+          })
+        }
+
+        const data = res.data[0]
+        // 瀛樺偍涓哄叏灞�鏁版嵁
+        setSummary(data)
+        // 缁樺埗鍦板浘鏍囪
+        marks.createLabelMarks(scene_1, unref(data.subTaskSummary), (v) => {
+          mapStore.focusMarker = v
+        })
+        mapUtil.setFitView()
       })
-      mapUtil.setFitView()
-    })
+      .finally(() => (subtaskLoading.value = false))
+  }
+
+  function onAllTaskRefreshed(callback) {
+    if (allTask.value != null) {
+      callback(taskInfo.value)
+    }
+    onFetchAllTask.push(callback)
   }
 
   // 璁剧疆鏂扮殑鍊�
@@ -105,6 +124,7 @@
     // summaryMap,
     subtaskLoading,
     fetchTopTaskProgress,
+    onAllTaskRefreshed,
     setSummary,
     getTaskInfo,
     getSummaryList,

--
Gitblit v1.9.3