From 1119a7837323e052d3e6256cddd3283d919bd959 Mon Sep 17 00:00:00 2001
From: guonan <guonan201020@163.com>
Date: 星期四, 26 六月 2025 15:44:02 +0800
Subject: [PATCH] 提交

---
 src/api/hpApi.js                 |   10 ++++++++--
 src/store/simulation.js          |    3 +++
 src/views/Home.vue               |   32 +++++++++++++++++++++++++++++++-
 src/components/menu/TimeLine.vue |   13 +++++--------
 4 files changed, 47 insertions(+), 11 deletions(-)

diff --git a/src/api/hpApi.js b/src/api/hpApi.js
index a525bda..06b36b9 100644
--- a/src/api/hpApi.js
+++ b/src/api/hpApi.js
@@ -235,11 +235,17 @@
 }
 
 // 鏌ヨ瀛欒儭娌熼伩闄╁満鎵�
-export async function getSafePoint() {
+export async function getSafePoint(data) {
   const response = await axios.get("/hp/safeHavenLocation/getDataSelect", {
     params: {
-      divisionId: "110116110218"
+      divisionId: data
     }
   });
   return response.data;
+}
+
+// 鏌ヨ鍖椾含甯�
+export async function getAllCode() {
+  const response = await axios.get("/hp/district/getAll");
+  return response.data;
 }
\ No newline at end of file
diff --git a/src/components/menu/TimeLine.vue b/src/components/menu/TimeLine.vue
index 897fdbe..f4b1380 100644
--- a/src/components/menu/TimeLine.vue
+++ b/src/components/menu/TimeLine.vue
@@ -899,18 +899,16 @@
 async function initializeSimulationData(force = false) {
   try {
     const schemeInfo = selectedScheme.value;
+    serviceInfo = schemeInfo.serviceName;
 
-    // 濡傛灉涓嶆槸 type == 2 涓旈潪寮哄埗鎵ц锛屽垯璺宠繃
-    if (schemeInfo.type !== 2 && !force) {
+    if (schemeInfo.type == 2) {
+      speedShow.value = false;
+      jsonFetch.value = layerDate.value;
+    } else {
       getRainfallData();
       speedShow.value = true;
       jsonFetch.value = null;
-      return;
     }
-
-    speedShow.value = false;
-    jsonFetch.value = layerDate.value;
-    serviceInfo = schemeInfo.serviceName;
 
     // console.log('鑾峰彇鍒扮殑 serviceName:', serviceInfo);
 
@@ -977,7 +975,6 @@
     shouldAutoPlay.value = false;
   }
 });
-
 
 // 鏍规嵁杩斿洖鏁版嵁鐨勪釜鏁板幓娓叉煋鏃堕棿杞�
 function updateTimelineRange() {
diff --git a/src/store/simulation.js b/src/store/simulation.js
index b18bbdd..2b74dcb 100644
--- a/src/store/simulation.js
+++ b/src/store/simulation.js
@@ -2,6 +2,9 @@
 import { defineStore } from 'pinia'
 import { ref } from 'vue'
 export const useSimStore = defineStore('simulation', () => {
+    // 鍖椾含甯傛墍鏈夋潙鐨刢ode
+    const townCodeAll = ref([])
+    // 瀹炴椂妯℃嫙鏈�鏂扮殑layer
     const layerDate = ref("")
     // 甯ф暟
     const frameNum = ref(0)
diff --git a/src/views/Home.vue b/src/views/Home.vue
index 0c1b6e9..efd0a70 100644
--- a/src/views/Home.vue
+++ b/src/views/Home.vue
@@ -58,7 +58,7 @@
 // import ResultAssess from "@/components/monifangzhen/ResultAssess.vue";
 // import DangerAssess from "@/components/monifangzhen/DangerAssess.vue";
 import { showDeviceDetail } from "@/store";
-import { setupTokenRefresh, getDangerPoint } from "@/api/hpApi.js";
+import { setupTokenRefresh, getDangerPoint, getAllCode } from "@/api/hpApi.js";
 import { convertToWKT } from "@/utils/wktUtils";
 import { getDeviceInfoSHG, getSafePoint } from "@/api/hpApi";
 
@@ -100,7 +100,37 @@
 // 璁$畻灞炴��
 const showDetail = computed(() => showDeviceDetail.value);
 
+function extractAllChildrenInfoUnique(dataArray) {
+  const map = new Map();
+
+  function traverse(nodes) {
+    if (!Array.isArray(nodes)) return;
+
+    for (const node of nodes) {
+      const key = node.code;
+
+      // 妫�鏌ユ槸鍚︽槸鏈�鍚庝竴灞傦紙娌℃湁瀛愯妭鐐规垨瀛愯妭鐐逛负绌烘暟缁勶級
+      if (!node.children || node.children.length === 0) {
+        if (key && !map.has(key)) {
+          map.set(key, { name: node.nameChn, code: key });
+        }
+      } else {
+        // 濡傛灉鏈夊瓙鑺傜偣锛岀户缁�掑綊閬嶅巻
+        traverse(node.children);
+      }
+    }
+  }
+
+  traverse(dataArray);
+  return Array.from(map.values());
+}
+
 onMounted(async () => {
+  getAllCode().then((res) => {
+    // 鍖椾含甯傛墍鏈夋潙浠ュ強琛楅亾code
+    simStore.townCodeAll = extractAllChildrenInfoUnique(res.data[0].children);
+    console.log(simStore.townCodeAll,'aaaaaaaaa')
+  });
   setupTokenRefresh(); // 鑾峰彇瀹忓浘token
   // getSimData(); //娴嬭瘯tr鍚庣
   // 鑾峰彇闅愭偅鐐瑰垪琛紙鍥犱负涓杞悗绔帴鍙h幏鍙栧姞杞芥椂闂磋緝闀匡級

--
Gitblit v1.9.3