From 44dd9c4eb8a2489c63a5eb53fd4254bbb3510e95 Mon Sep 17 00:00:00 2001
From: 罗广辉 <guanghui.luo@foxmail.com>
Date: Thu, 18 Jun 2026 09:14:57 +0800
Subject: [PATCH] Merge branch 'feature/v9.0/9.0.4'

---
 src/pages/map/index.vue |  141 +++++++++++++++++++++++++++-------------------
 1 files changed, 83 insertions(+), 58 deletions(-)

diff --git a/src/pages/map/index.vue b/src/pages/map/index.vue
index 629a80a..0e243c4 100644
--- a/src/pages/map/index.vue
+++ b/src/pages/map/index.vue
@@ -1,68 +1,93 @@
+
 <template>
-	<view class="page-wrap">
-		<WebViewPlus :src="`${viewUrl}`" @webMessage="onPostMessage" />
-	</view>
+  <view class="page-wrap">
+    <WebViewPlus :src="`${viewUrl}`" @webMessage="onPostMessage" />
+  </view>
 </template>
 
 <script setup>
-	import {
-		getWebViewUrl
-	} from "@/utils/index.js";
-	import WebViewPlus from "@/components/WebViewPlus.vue";
-	// const viewUrl = getWebViewUrl("/defaultMap");
-	const baseUrl = getWebViewUrl("/defaultMap");
+import { getWebViewUrl } from "@/utils/index.js";
+import WebViewPlus from "@/components/WebViewPlus.vue";
+import { onHide, onShow } from "@dcloudio/uni-app";
+import {getUserInfo} from "@/api/user/index.js";
 
-	let envParam = "";
-	// #ifdef WEB
-	envParam = "isWeb=true";
-	// #endif
-	// #ifdef APP-PLUS
-	envParam = "isWeb=false";
-	// #endif
-	const viewUrl = ref("");
-	onMounted(() => {
-		if (typeof baseUrl === "string") {
-			viewUrl.value = baseUrl.includes("?") ?
-				`${baseUrl}&${envParam}` :
-				`${baseUrl}?${envParam}`;
-		}
-	});
-	const onPostMessage = (data) => {
-		if (data.type === "scanCode") {
-			uni.navigateTo({
-				url: "/subPackages/qrCode/index",
-			});
-		} else if (data.type === "jumpAddWork") { //新建任务
-			const encodedData = encodeURIComponent(JSON.stringify(data.rowItem))
-			uni.setStorageSync('webview_params', encodedData)
-			uni.navigateTo({
-				url: `/subPackages/taskDetail/addTask/index`,
-			});
-		} else if (data.type === 'jumpMapNav') { //事件导航
-			uni.navigateTo({
-				url: `/subPackages/workDetail/mapWork/index?currentItem=${data.eventNum}`
-			});
-		} else if (data.type === 'workid') { //事件详情
-			uni.navigateTo({
-				url: `/subPackages/workDetail/index?eventNum=${data.eventNum}`
-			});
-		}
-	};
+let envParam = "";
+// #ifdef WEB
+envParam = "true";
+// #endif
+// #ifdef APP-PLUS
+envParam = "false";
+// #endif
 
-	onShow(() => {
-		uni.setTabBarItem({
-			index: 2, // Tab 的索引(从0开始)
-			visible: false,
-		})
-		uni.setTabBarItem({
-			index: 3, // Tab
-			visible: true,
-		});
-	})
+const updateKey = ref(0);
+const viewUrl = computed(() => {
+  return getWebViewUrl("/defaultMap", {
+    isWeb: envParam,
+    updateKey: updateKey.value,
+  });
+});
+
+const onPostMessage = (data) => {
+  // #ifdef MP-WEIXIN
+  if (data.type === "scanCode") {
+  } else if (data.type === "jumpAddWork") {
+  } else if (data.type === "jumpMapNav") {
+    //事件导航
+  } else if (data.type === "workid") {
+    //事件详情
+  }
+  // #endif
+
+  // #ifndef MP-WEIXIN
+  if (data.type === "scanCode") {
+    uni.navigateTo({
+      url: "/subPackages/qrCode/index",
+    });
+  } else if (data.type === "jumpAddWork") {
+    //新建任务
+    const encodedData = encodeURIComponent(JSON.stringify(data.rowItem));
+    uni.setStorageSync("webview_params", encodedData);
+    uni.switchTab({
+      url: `/subPackages/taskDetail/addTask/index`,
+    });
+  } else if (data.type === "jumpMapNav") {
+    //事件导航
+    uni.navigateTo({
+      url: `/subPackages/workDetail/mapWork/index?currentItem=${data.eventNum}`,
+    });
+  } else if (data.type === "workid") {
+    //事件详情
+    uni.navigateTo({
+      url: `/subPackages/workDetail/index?eventNum=${data.eventNum}`,
+    });
+  }
+  // #endif
+};
+
+onShow(() => {
+  // 验证一下有没有登录
+  getUserInfo()
+
+  // #ifndef MP-WEIXIN
+  uni.setTabBarItem({
+    index: 2, // Tab 的索引(从0开始)
+    visible: false,
+    pagePath: "subPackages/taskDetail/addTask/index",
+  });
+  uni.setTabBarItem({
+    index: 3, // Tab
+    visible: true,
+  });
+  // #endif
+});
+
+onHide(() => {
+  updateKey.value = updateKey.value + 1;
+});
 </script>
 
 <style scoped lang="scss">
-	.page-wrap {
-		font-size: 20px;
-	}
+.page-wrap {
+  font-size: 20px;
+}
 </style>

--
Gitblit v1.9.3