From 2af5f043b60c1f7ac38ecccc8f5bf44743134325 Mon Sep 17 00:00:00 2001
From: cuiqian2004 <cuiqian2004@163.com>
Date: 星期五, 12 十二月 2025 18:08:00 +0800
Subject: [PATCH] test

---
 pages/map/scene.vue |  125 ++++++++++++++++++++++++-----------------
 1 files changed, 73 insertions(+), 52 deletions(-)

diff --git a/pages/map/scene.vue b/pages/map/scene.vue
index c787b5d..c0f2929 100644
--- a/pages/map/scene.vue
+++ b/pages/map/scene.vue
@@ -1,20 +1,22 @@
 <template>
 	<view class="pages-scene">
 		<view class="map-content" v-if="opSceneType =='' ">
-			<image v-if="opType != 'extend'" class="img" src="/images/image_25.png" alt=" 鍥剧墖" mode="aspectFit" />
-			<image v-else class="img" :src="extendBase64Img" alt=" 鍥剧墖" mode="aspectFit" />
-			<view v-if="opType != 'extend'" class="space">娌℃湁鎵惧埌绗﹀悎鏉′欢鐨勫湴鍥�/view>
+			<image v-if="opType != 'extend'" class="img" src="/images/image_25.png" alt=" picture" mode="aspectFit" />
+			<image v-else class="img" :src="extendBase64Img" alt=" picture" mode="aspectFit" />
+			<view v-if="opType != 'extend'" class="space">{{translate("no_map_found")}}</view>
 			<!-- <view class="loading-view">{{mapserverIsOk?"鏋勫浘绋嬪簭鍑嗗灏辩华":"绛夊緟鏋勫浘绋嬪簭灏辩华..."}}
 				<view v-if="!mapserverIsOk" class="auto-circle"></view>:disabled="!mapserverIsOk" 
 			</view> -->
 			<view class="text-button-group">
 				<a-button type="primary" class="button" @click="clickStartConstructScene">
-					{{opType == 'extend'?"寮�鎵╁睍":'寮�鏋勫缓'}}
+					{{opType == 'extend'?translate("start_extending"):translate("start_building")}}
 				</a-button>
-				<a-button v-if="opType != 'extend'" type="primary" class="button"
-					:disabled="loading && localSceneList.length == 0" @click="clickDownloadScene" disabled>
-					涓嬭浇鍦烘櫙
-				</a-button>
+				<navigator :url="`/pages/index/backup?ip=${ip}&opType=download`" hover-class="other-navigator-hover">
+					<a-button v-if="opType != 'extend'" type="primary" class="button"
+						:disabled="loading && localSceneList.length == 0">
+						{{translate("download_scenes")}}
+					</a-button>
+				</navigator>
 			</view>
 
 		</view>
@@ -26,33 +28,36 @@
 		</view>
 		<view class="bottom">
 			<view class="bottom-content" v-if="opSceneType =='add_name' ">
-				<view class="tip">璇疯緭鍏ュ満鏅悕绉�/view>
+				<view class="tip">{{translate('input_scene_name')}}</view>
 				<view class="name-input">
-					<input ref="refInputName" :focus="true" placeholder="璇疯緭鍏ュ満鏅悕绉� :value="sceneName"
-						@input="onInputName" />
+					<input ref="refInputName" :focus="true" :placeholder="translate('input_scene_name')"
+						:value="sceneName" @input="onInputName" />
 					<uni-icons class="clear" color="#ccc" type="clear" size="20" v-if="showClearName"
 						@click="clickClearName"></uni-icons>
 				</view>
 				<view class="text-button-group">
 					<a-button type="primary" class="button" :disabled="loading || sceneName.trim() == ''"
-						@click="clickNameOK">纭</a-button>
+						@click="clickNameOK">{{translate("confirm")}}</a-button>
 					<a-button type="ghost" class="button" :disabled="loading" @click="clickNameCancel">鍙栨秷</a-button>
 
 				</view>
 			</view>
 			<view class="bottom-content" v-else-if="opSceneType =='scan'">
-				<view class="tip">鍦烘櫙鏋勫缓涓�/view>
+				<view class="tip">{{translate("scene_construction_in_progress")}}</view>
 				<view>
 					<!-- 璇锋搷浣滄惉杩愯溅鎵弿鍦板浘瑕嗙洊鐨勫尯鍩�-->
 					{{mapCreatePhase}}
 				</view>
 
 				<view class="text-button-group">
-					<a-button type="primary" class="button" :disabled="loading" @click="clickScanFinish">鎵弿瀹屾垚</a-button>
+					<a-button type="primary" class="button" :disabled="loading"
+						@click="clickScanFinish">{{translate("scan_completed")}}</a-button>
 				</view>
 			</view>
 			<view class="bottom-content" v-else-if="opSceneType =='finish'">
-				<view class="tip"> 鈥渰{sceneName}}鈥漿{opType == "extend"?"鍦烘櫙鎵╁睍缁撴潫"+"":"鍦烘櫙鏋勫缓缁撴潫"}}</view>
+				<view class="tip">
+					鈥渰{sceneName}}鈥漿{opType == "extend"?translate("scene_extend_completed"):translate("scene_construction_completed")}}
+				</view>
 				<!-- 	<view> 宸叉垚鍔熸瀯寤衡�{{sceneName}}鈥�/view> -->
 				<view class="loading-view">
 					{{mapCreatePhase}}
@@ -60,9 +65,9 @@
 				</view>
 				<view class="text-button-group">
 					<a-button type="primary" class="button" v-if="mapServerPhase === 6"
-						@click="clickRecreate">{{opType == "extend"?"閲嶇幇鎵╁睍":"閲嶇幇鏋勫缓"}}</a-button>
+						@click="clickRecreate">{{opType == "extend"?translate('re_extend'):translate("rebuild")}}</a-button>
 					<a-button type="primary" class="button" v-else :disabled=" mapServerPhase !==5 || loading"
-						@click="clickFinish">{{opType == "extend"?"鎵╁睍瀹屾垚":"鏋勫缓瀹屾垚"}}</a-button>
+						@click="clickFinish">{{opType == "extend"?translate("extend_completed"):translate("construction_completed")}}</a-button>
 				</view>
 			</view>
 		</view>
@@ -127,17 +132,17 @@
 		computed: {
 			mapCreatePhase() {
 				if (this.mapServerPhase == 1) {
-					return "鍦烘櫙鏋勫缓鏈嶅姟锛氭湭鍚姩"
+					return this.translate("scene_construction_service_not_start")
 				} else if (this.mapServerPhase == 2) {
-					return "鍦烘櫙鏋勫缓鏈嶅姟锛氬惎鍔ㄤ腑"
+					return this.translate("scene_construction_service_starting")
 				} else if (this.mapServerPhase == 3) {
-					return "鍦烘櫙鏋勫缓涓�
+					return this.translate("scene_construction_in_progress")
 				} else if (this.mapServerPhase == 4) {
-					return "鍦烘櫙鏋勫浘淇濆瓨涓�
+					return this.translate("scene_composition_saving")
 				} else if (this.mapServerPhase == 5) {
-					return "鍦烘櫙鏋勫浘淇濆瓨鎴愬姛"
+					return this.translate("scene_composition_save_success")
 				} else if (this.mapServerPhase == 6) {
-					return "鍦烘櫙鏋勫浘淇濆瓨澶辫触"
+					return this.translate("scene_composition_save_failed")
 				} else
 					return this.mapServerPhase
 			}
@@ -168,7 +173,12 @@
 
 			if (this.opSceneType == "scan") {
 
-				showModal("宸叉瀯寤哄満鏅皢浼氳鍒犻櫎", "鏄惁涓柇鍦烘櫙鏋勫缓锛�).then((res) => {
+				showModal({
+					title: this.translate("ask_interrupt_scene_construction"),
+					content: `${this.translate('built_scene_will_be_deleted')}`,
+					confirmText: this.translate('yes'),
+					cancelText: this.translate("no"),
+				}).then((res) => {
 					if (res) {
 						this.opSceneType = ""
 						if (this.opType != "") {
@@ -263,7 +273,7 @@
 
 				} catch (ex) {
 
-					showError(ex)
+					showError(ex, this.translate('error'))
 				}
 			},
 			async loadMapInfo(id) {
@@ -280,8 +290,7 @@
 
 					const res = await getMapServerPhase(this.ip)
 					this.mapServerPhase = res || 1
-					if(this.opSceneType === "finish")
-					{
+					if (this.opSceneType === "finish") {
 						if (this.mapServerPhase === 5 || this.mapServerPhase === 6) {
 							this.saveMapIsOk = true
 							return
@@ -333,14 +342,14 @@
 						})
 						const now = new Date()
 						const date = `${now.getHours()}:${now.getMinutes()}:${now.getSeconds()}`
-						showToast("鍔犺浇搴曞浘澶辫触")
+						showToast(this.translate("loading_base_map_failed"))
 						const log = {
 							date,
 							method: `POST`,
 							url: "app/log/load_img",
 							param: param.msg,
 							statusCode: 100,
-							data: "鍔犺浇搴曞浘澶辫触"
+							data: this.translate("loading_base_map_failed")
 						}
 						const listLog = session.getValue("request_log") || []
 						listLog.unshift(log)
@@ -362,7 +371,7 @@
 					const list = session.getValue("scene_db") || []
 					return list
 				} catch (ex) {
-					showError(ex)
+					showError(ex, this.translate('error'))
 					return []
 				}
 			},
@@ -378,26 +387,30 @@
 						this.opSceneType = "add_name"
 					}
 				} catch (ex) {
-					showError(ex)
+					showError(ex, this.translate('error'))
 				}
 			},
 			async clickDownloadScene() {
 				try {
-					this.loading = true
-					uni.showLoading({
-						title: "涓嬭浇鍦烘櫙涓�
+					uni.navigateTo({
+						url: `/pages/index/backup?ip=${this.ip}&opType=download`,
+
 					})
-					const data = this.localSceneList[0].data
-					await saveDBData(this.ip, data)
-					showToast("涓嬭浇鍦烘櫙鎴愬姛")
-					this.opSceneType = ""
-					const eventChannel = this.getOpenerEventChannel();
-					eventChannel.emit('create_finish', this.sceneName);
-					uni.navigateBack({
-						delta: 1, //杩斿洖灞傛暟锛�鍒欎笂涓婇〉
-					})
+					// this.loading = true
+					// uni.showLoading({
+					// 	title: this.translate("downloading_scene")
+					// })
+					// const data = this.localSceneList[0].data
+					// await saveDBData(this.ip, data)
+					// showToast(this.translate("download_scene_success"))
+					// this.opSceneType = ""
+					// const eventChannel = this.getOpenerEventChannel();
+					// eventChannel.emit('create_finish', this.sceneName);
+					// uni.navigateBack({
+					// 	delta: 1, //杩斿洖灞傛暟锛�鍒欎笂涓婇〉
+					// })
 				} catch (ex) {
-					showError(ex)
+					showError(ex, this.translate('error'))
 				} finally {
 					this.loading = false
 					uni.hideLoading()
@@ -415,11 +428,11 @@
 				try {
 					this.loading = true
 					uni.showLoading({
-						title: "寮�鏋勫缓鍦烘櫙"
+						title: this.translate("start_building")
 					})
 					const name = this.sceneName.trim()
 					if (!name) {
-						showToast("绔欑偣鍚嶇О杩樻湭杈撳叆")
+						showToast(this.translate("input_scene_name"))
 						return
 					}
 
@@ -428,14 +441,14 @@
 					await addMap(this.ip, name)
 					this.checkMapServerPhase()
 					uni.showLoading({
-						title: "寮�鎵弿鍦板浘"
+						title: this.translate("start_scanning_map")
 					})
 					this.mapId = ""
 					this.opSceneType = 'scan'
 
 
 				} catch (ex) {
-					showError(ex)
+					showError(ex, this.translate('error'))
 					this.opSceneType = 'add_name'
 				} finally {
 					this.loading = false
@@ -458,7 +471,7 @@
 				try {
 					this.loading = true
 					uni.showLoading({
-						title: "鍦板浘鎵弿缁撴潫"
+						title: this.translate("end_scanning_map")
 					})
 					this.opSceneType = "finish"
 					uni.setNavigationBarTitle({
@@ -479,7 +492,12 @@
 
 				} catch (ex) {
 					console.log(ex)
-					showModal("璇锋鏌ヨ溅杈嗚繛鎺ワ紝骞堕噸鏂板紑濮嬫瀯寤哄満鏅�, "鍦烘櫙鏋勫缓澶辫触", false, "纭畾").then((res) => {
+					showModal({
+						title: this.translate("scene_construction_failed"),
+						content: `${this.translate('check_vehicle_connection_and_restart_building_scene')}`,
+						confirmText: this.translate('ok'),
+						showCancel: false
+					}).then((res) => {
 						this.opSceneType = ''
 
 					})
@@ -494,7 +512,7 @@
 
 					this.loading = true
 					uni.showLoading({
-						title: "缁撴潫鍦烘櫙鏋勫缓"
+						title: this.translate("scene_construction_completed")
 					})
 					this.opSceneType = ""
 					const eventChannel = this.getOpenerEventChannel();
@@ -641,7 +659,10 @@
 
 			},
 
-
+			translate(t) {
+				if (typeof this.$t == "function") return this.$t(`page.${t}`)
+				else return t;
+			},
 		}
 	}
 </script>

--
Gitblit v1.9.1