<template>
	<view class="page">
		<bluetooth-control ref="bluetoothControl" :sn="deviceInfos.sn" :mac="deviceInfos.mac"
			@operation-complete="deviceInfo" @mask-closed="handleMaskClosed" @changeCarstause="changeCarstause" />
		<view class="page1" v-if="showdevice">
			<view class="fixed" v-if="false">
				<u-navbar title=" " :border-bottom="false" :background="background" title-color='#fff' title-size='36'
					height='45' back-icon-color='#000'></u-navbar>

			</view>
			<view class="top">
				<view class="model" @click="toselect()">
					{{ deviceInfos.model }}  <image src="https://lxnapi.ccttiot.com/bike/img/static/utP93v8em0Mq8UHLc4UM" mode="" ></image>
				</view>
				<view class="switch" v-if="openBlue">

					<view v-if="connectBlue == false" class="switch">
						<u-loading mode="circle" size="40" style="margin-right: 30rpx;margin-left: 20rpx;"
							color="#FF8282"></u-loading>
						连接中
						<image src="https://lxnapi.ccttiot.com/bike/img/static/ukhgaoFSHmlJWkgyC4U4" mode=""
							class="bluetooth">
						</image>
					</view>
					<view v-else class="switch" style="color: #4297F3;padding-left: 40rpx;">

						连接成功
						<image src="https://lxnapi.ccttiot.com/bike/img/static/udli5LEVfOT62XShk99A" mode=""
							class="bluetooth">
						</image>
					</view>
				</view>
			</view>
			<view class="power">
				<view class="tit">
					电量
				</view>
				<view class="num">
					{{ deviceInfos.remainingPower }}%
				</view>
			</view>
			<view class="car_img">
				<image src="https://lxnapi.ccttiot.com/bike/img/static/ukC1CG1uAz1pwV0qZ03n" mode=""></image>
			</view>
			<view class="tips">
				<view class="yuan">

				</view>
				当前车辆状态: {{ deviceInfos.lockStatus == 1 ? '开锁' : '关锁' }}
			</view>
			<view class="btn_box">
				<view class="btn1" @click="devicebtn(2)">
					<image src="https://lxnapi.ccttiot.com/bike/img/static/uaW9kLzl1RYoU8WyiuYL" mode=""></image>
					鸣笛寻车
				</view>
				<!-- <view class="btn2" @touchstart="touchStart" @touchmove="touchMove" @touchend="touchEnd">
				          <view class="slider" :style="{ transform: 'translateX(' + translateX + 'rpx)' }"></view>
				          右滑启动
				        </view> -->
				<view class="btn1" @click="devicebtn(1)" v-if="deviceInfos.lockStatus == 1">
					<image src="https://lxnapi.ccttiot.com/bike/img/static/uEUTkjiSqIDTjnLxGvP8" mode=""></image>
					已启动
				</view>
				<view class="btn1" @click="devicebtn(0)" v-else>
					<image src="https://lxnapi.ccttiot.com/bike/img/static/uAx8pleqdhKswoupY8Wo" mode=""></image>
					已关锁
				</view>
				<view class="btn1" @click="mapFuns">
					<image src="https://lxnapi.ccttiot.com/bike/img/static/uGrptW1UAUQy0v1pQQvC" mode=""></image>
					导航寻车
				</view>
			</view>
			<view class="order_info">
				<view class="info_top">
					<view class="tit1">
						欢迎使用电动车
					</view>
					<view class="txt1" @click="topage(1)">
						查看订单 <image src="https://lxnapi.ccttiot.com/bike/img/static/uAxKe5Or9LMUn4DNBL9B" mode="">
						</image>
					</view>
				</view>
				<view class="info_cont">
					<image src="https://lxnapi.ccttiot.com/bike/img/static/ueWcek6yF0kSadYfYhyV" mode=""></image>
					<view class="infos">
						<view class="time">
							{{ time1() }}
						</view>
						<view class="data">
							{{ time2() }}
						</view>
						<view class="tips1">
							到期后将产生超时费用
						</view>
					</view>
				</view>
				<view class="btns" @click="topage(0)">
					去续租
				</view>
			</view>
			<view class="min_map">

				<view class="map_top" @click="tomap">
					<view class="map_left">
						<view class="map_left_top">
							<view class="map_left_top_tit">
								上次车辆位置
							</view>
							<view class="map_left_top_data">
								更新于 05-12 10:22
							</view>
						</view>
						<view class="map_left_bottom">
							福建省宁德市福鼎市海滨路200号靠近福鼎第四中学
						</view>
					</view>
					<view class="map_right">
						<view class="iconfont icon-xiangyou1"></view>
					</view>
				</view>
				<map style="width: 99%; height: 99%;border-radius: 30rpx;overflow: hidden;" :latitude="latitude"
					:show-location="true" :longitude="longitude" :markers="markers"></map>
			</view>

		</view>
		<view class="page2" v-else>
			<image src="https://lxnapi.ccttiot.com/bike/img/static/uBAfXJ4nwrD45c8YmK50" mode="" class="img"></image>
			<view class="tips" style="width: 100%;">
				<view class="yuan">

				</view>
				当前暂无租赁车辆
			</view>
			<view class="addbtn" @click=" addivice()">
				<image src="https://lxnapi.ccttiot.com/bike/img/static/uqIufjb8EAbQCnCQBiLz" mode="" class="addimg">
				</image>
				添加车辆

			</view>
			<u-select v-model="showadd" :list="list" title='选择添加方式' @confirm="confirm"></u-select>
		</view>
		<tab-bar :indexs='0' style="" :userInfo='userInfo'></tab-bar>
	</view>
</template>

<script>


import BluetoothControl from '@/components/bluetooth-control.vue'

export default {
	components: {
		BluetoothControl
	},
	data() {
		return {
			list: [
				{
					value: '1',
					label: '扫码添加'
				},
				{
					value: '2',
					label: '手动输入'
				}
			],
			showadd: false,
			devicesList: [
				// {name:'110000',
				// mac:'11111'}
			],
			searching: false,
			texts: '正在扫描蓝牙设备...',
			btnflag: true,
			tishiflag: false,
			option: '',
			bluthlist: [], //蓝牙数组
			// status: 'loading',
			statusflag: false,
			Bluetoothmac: '',
			mac: '',
			ishave: false,
			ver_data: null,
			deviceInfoss: {},
			gps: {},
			isband: false,
			// status: false,
			deviceIds: '',
			name: '',

			dl: 0,
			czmoney: true,
			iscz: true,
			bgc: {
				backgroundColor: "#F7FAFE",
			},
			show: true,
			showgj: true,
			searchKeyword: '11',
			latitude: 39.916527,
			longitude: 116.397128,
			isMap: false,
			zoomSize: 15,
			markers: [],
			polyline: [],
			polygons: [],
			cardId: '001区域',
			sn: '',

			carstause: false,

			maskloading: false,
			toploadtxt: "开锁中0%",
			loadimg: 'https://lxnapi.ccttiot.com/bike/img/static/urJQJnOI1DEjWatFqHYh',
			tiptxt: '请定点停放,规范用车',
			maskepage: 0,
			backgps: {},
			buletxt: '',

			buleclose: false,
			buleopen: false,
			bulering: false,
			bulerebort: false,

			orderinfo: {},
			storeInfo: {},
			latitude: null,
			longitude: null,
			showdevice: false,
			deviceInfos: {},
			openBlue: false,
			connectBlue: false,
			deviceList: [],
		}
	},
	onLoad(e) {
		// 1. 先检查是否有存储的 sn(说明是登录后返回)
		let storedSn = uni.getStorageSync('sn')
		if (storedSn) {
			const token = uni.getStorageSync('token');
			if (token) {
				console.log('已登录');
				uni.removeStorageSync('sn')
				// 已登录,直接跳转到订单页
				uni.navigateTo({
					url: '/page_user/ordder?sn=' + storedSn
				});
			} else {
				console.log('未登录');
				// 未登录,存储 sn 并跳转到登录页
				uni.setStorageSync('sn', storedSn)
				uni.navigateTo({
					url: '/pages/login/login'
				});
			}
		}

		// 2. 处理扫码进入的情况
		if (e.q) {
			// 解析二维码参数
			const decodedUrl = decodeURIComponent(e.q);
			const snMatch = decodedUrl.match(/sn=([^&]*)/);
			const sn = snMatch ? snMatch[1] : null;

			if (!sn) {
				uni.showToast({
					title: '无效的二维码',
					icon: 'none'
				});
				return;
			}

			const token = uni.getStorageSync('token');
			if (token) {
				console.log('已登录');
				uni.removeStorageSync('sn')
				// 已登录,直接跳转到订单页
				uni.navigateTo({
					url: '/page_user/ordder?sn=' + sn
				});
			} else {
				console.log('未登录');
				// 未登录,存储 sn 并跳转到登录页
				uni.setStorageSync('sn', sn)
				uni.navigateTo({
					url: '/pages/login/login'
				});
			}
		}
		if (e.sn) {
			// 解析二维码参数
			const sn = e.sn;

			if (!sn) {
				uni.showToast({
					title: '无效的二维码',
					icon: 'none'
				});
				return;
			}

			const token = uni.getStorageSync('token');
			if (token) {
				console.log('已登录');
				uni.removeStorageSync('sn')
				// 已登录,直接跳转到订单页
				uni.navigateTo({
					url: '/page_user/ordder?sn=' + sn
				});
			} else {
				console.log('未登录');
				// 未登录,存储 sn 并跳转到登录页
				uni.setStorageSync('sn', sn)
				uni.navigateTo({
					url: '/pages/login/login'
				});
			}
		}
		// this.deviceInfo()
		// this.getorderInfo()
		uni.getBluetoothAdapterState({
			success: function (res) {
				if (!res.available) {
					console.log('蓝牙不可用');
					return;
				}
				if (!res.discovering) {
					console.log('蓝牙正在搜索中');
					// 实际业务中可能需要根据需求处理
				}
				if (res.authorized) {
					console.log('已授权');
					// 已授权,可以进行蓝牙操作
				} else if (res.authorizing) {
					console.log('正在授权');
					// 正在请求授权
				} else {
					console.log('未授权');
					// 未授权,需要请求授权
					uni.authorize({
						scope: 'scope.bluetooth',
						success() {
							console.log('授权成功');
							// 授权成功,可以进行蓝牙操作
						},
						fail() {
							console.log('授权失败');
							// 用户拒绝授权或者授权失败
						}
					});
				}
			},
			fail: function (err) {
				console.log('获取蓝牙状态失败', err);
			}
		});
		let that = this
		uni.getNetworkType({
			success: function (res) {
				console.log(res.networkType); // 输出网络类型,如 "wifi", "4g", "3g", "2g", "none"
				if (res.networkType == 'none') {
					that.netonlines = false


				} else {
					that.netonlines = true
					uni.getLocation({
						type: 'gcj02',
						success: function (lb) {

							that.latitude = lb.latitude;
							that.longitude = lb.longitude;
						},
						fail: function (error) {
							uni.showToast({
								title: '未获取到定位信息,请点击设置勾选允许位置信息,即可使用全部功能',
								icon: 'none',
								duration: 2000
							});
							// that.getmarks()
							// 在这里处理获取位置信息失败的情况
						}

					})




					// console.log('有网络连接');\

				}
			}
		});
	},
	onShow() {
		this.getDeviceList()
	},

	methods: {
		addivice(){
			const token = uni.getStorageSync('token');
			if(token){
				this.showadd = true
			}else{
				uni.navigateTo({
					url:'/pages/login/login'
				})
			}
			
			
		},
		changeCarstause(newVal) {
			this.connectBlue = newVal
			console.log(newVal, 'newVal');
		},
		// 蓝牙操作
		openBluetooth() {
			console.log('打开蓝牙');

			const bluetoothControl = this.$refs.bluetoothControl;
			bluetoothControl.Binddevice();
		},

		devicebtn(num) {
			// this.showbtntip = false
			if (num == 0) {
				uni.showLoading({
					title: '加载中...'
				})
				this.$u.post('/appVerify/device/unlock?sn=' + this.deviceInfos.sn+'&orderNo='+this.orderinfo.orderNo).then((res) => {
					uni.hideLoading()
					if (res.code == 200) {
						// 处理接口返回的数据,将边界数据转换为地图组件需要的折线结构
						this.deviceInfo()
						uni.showToast({
							title: '操作成功',
							icon: 'none',
							duration: 2000
						});
					} else {
						this.handleBluetoothOperation('opne')
					}
				}).catch(error => {
					console.error("Error fetching area data:", error);
				});
			} else if (num == 1) {
				uni.showLoading({
					title: '加载中...'
				})

				this.$u.post('/appVerify/device/lock?sn=' + this.deviceInfos.sn+'&orderNo='+this.orderinfo.orderNo).then((res) => {
					uni.hideLoading()
					if (res.code == 200) {
						// 处理接口返回的数据,将边界数据转换为地图组件需要的折线结构
						this.deviceInfo()
						uni.showToast({
							title: '操作成功',
							icon: 'none',
							duration: 2000
						});
					} else {
						this.handleBluetoothOperation('close')
					}
				}).catch(error => {
					console.error("Error fetching area data:", error);
				});
			} else if (num == 2) {

				uni.showLoading({
					title: '加载中...'
				})
				this.$u.post('app/device/ring?sn=' + this.deviceInfos.sn).then((res) => {
					uni.hideLoading()
					if (res.code == 200) {

						uni.showToast({
							title: '操作成功',
							icon: 'none',
							duration: 2000
						});
					} else {
						this.handleBluetoothOperation('ring')
					}
				})
			} else if (num == 3) {

			} else if (num == 4) {


			} else if (num == 5) {

			} else if (num == 6) {


			} else if (num == 7) {


			} else if (num == 8) {
				uni.showLoading({
					title: '加载中...'
				})
				this.$u.post('/appVerify/device/reboot?sn=' + this.sn).then((res) => {
					if (res.code == 200) {
						this.deviceInfo()
						uni.showToast({
							title: '操作成功',
							icon: 'none',
							duration: 2000
						});
					} else {
						// uni.hideLoading()
						// this.bulebtn(4)
					}
				})


			} else if (num == 9) {
				uni.showLoading({
					title: '加载中...'
				})
				this.$u.post('/appVerify/device/seatCushionLock?sn=' + this.sn).then((res) => {
					if (res.code == 200) {
						this.deviceInfo()
						uni.showToast({
							title: '操作成功',
							icon: 'none',
							duration: 2000
						});
					} else {
						uni.showToast({
							title: res.msg,
							icon: 'none',
							duration: 2000
						});
					}
				})
			} else if (num == 10) {
				uni.showLoading({
					title: '加载中...'
				})
				this.$u.post('/appVerify/refreshDevice?sn=' + this.sn).then((res) => {
					if (res.code == 200) {
						this.deviceInfo()
						uni.showToast({
							title: '操作成功',
							icon: 'none',
							duration: 2000
						});
					} else {
						uni.showToast({
							title: res.msg,
							icon: 'none',
							duration: 2000
						});
					}
				})
			}
		},
		handleBluetoothOperation(type) {
			const bluetoothControl = this.$refs.bluetoothControl;
			if (!bluetoothControl) return;

			if (this.connectBlue) {
				console.log('调用的1');

				switch (type) {
					case 'open':
						bluetoothControl.open();
						break;
					case 'close':
						bluetoothControl.close();
						break;
					case 'ring':
						bluetoothControl.ring();
						break;
					case 'reboot':
						bluetoothControl.reboot();
						break;
				}
			} else {
				console.log('调用的2');
				switch (type) {
					case 'open':
						bluetoothControl.buleopen = true;
						break;
					case 'close':
						bluetoothControl.buleclose = true;
						break;
					case 'ring':
						bluetoothControl.bulering = true;
						break;
					case 'reboot':
						bluetoothControl.bulerebort = true;
						break;
				}
				bluetoothControl.Binddevice();
			}
		},


		tomap() {
			uni.navigateTo({
				url: '/page_user/carMap?sn=' + this.deviceInfos.sn
			})
		},
		toselect() {
			uni.navigateTo({
					url: '/page_user/selectCar'
				})
		},
		getDeviceList() {

			this.$u.get(`/appVerify/getDeviceListByToken`).then((res) => {
				if (res.code == 200) {
					// 检查返回的数据数组是否非空
					this.deviceList = res.data
					if (res.data && res.data.length > 0) {
						// 找出所有 isDefault 为 0 的设备
						let defaultDevices = res.data.filter(item => item.isDefault == 0);

						// 如果找到多个设备,按索引赋值给 deviceinfo
						if (defaultDevices.length > 0) {
							this.deviceInfos = defaultDevices[0]; // 取第一个设备
							this.getorderInfo()
							console.log(this.deviceinfos, 'this.deviceinfos');
							this.sn = this.deviceInfos.sn
							this.markers.push({
								id: parseFloat(this.deviceInfos.sn),
								latitude: parseFloat(this.deviceInfos.latitude),
								longitude: parseFloat(this.deviceInfos.longitude),

								width: 49,
								height: 114 / 2,

								iconPath: 'https://lxnapi.ccttiot.com/bike/img/static/uhmzfPtuFGybfWcZq61q'

							})
							// if(this.deviceInfos.onlineStatus==1){
							// 	this.openBlue=true
							// 	this.openBluetooth()
							// }
							console.log(this.markers, 'this.markers');
							this.$forceUpdate()

						} else {
							this.deviceInfos = res.data[0];
							this.sn = this.deviceInfos.sn
							// if(this.deviceInfos.onlineStatus==1){
							// 	this.openBlue=true
							// 	this.openBluetooth()
							// }

							this.getorderInfo()
							this.markers.push({
								id: parseFloat(this.deviceInfos.sn),
								latitude: parseFloat(this.deviceInfos.latitude),
								longitude: parseFloat(this.deviceInfos.longitude),

								width: 49,
								height: 114 / 2,

								iconPath: 'https://lxnapi.ccttiot.com/bike/img/static/uhmzfPtuFGybfWcZq61q'

							})
							console.log(this.markers, 'this.markers');
							this.$forceUpdate()
						}

						// 设置 showdevice 为 true
						this.showdevice = true;
					}
				} else {
					uni.showToast({
						title: res.msg,
						icon: 'none',
						duration: 2000
					});
				}
			});
		},
		getorderInfo() {
			let data = {
				sn: this.deviceInfos.sn
			}
			this.$u.get(`/appVerify/getInProgressOrder`, data).then((res) => {
				if (res.code == 200) {
					this.orderinfo = res.data
				} else {
					uni.showToast({
						title: res.msg,
						icon: 'none',
						duration: 2000
					});
				}
			});

		},
		confirm(e) {

			this.showadd = false
			if (e[0].value == '1') {
				uni.navigateTo({
					url: '/page_user/QrBind'
				})
			} else if (e[0].value == '2') {
				uni.navigateTo({
					url: '/page_user/SnBind'
				})
			}
		},
		toback() {
			uni.redirectTo({
				url: '/page_user/user_order?orderNo=' + this.orderinfo.orderNo
			})
		},
		callPhone(phone) {
			uni.makePhoneCall({
				phoneNumber: phone
			})
			// setTimeout(()=>{
			// 	this.showkf=false
			// },500)
		},
		topage(num) {

			console.log(this.orderinfo.orderNo);
			if (this.orderinfo && this.orderinfo.orderNo) {
				// console.log(this.orderInfo.orderNo);
				if (num == 0) {
					uni.redirectTo({
						url: '/page_user/renewCar?orderNo=' + this.orderinfo.orderNo
					});
				} else if (num == 1) {
					uni.redirectTo({
						url: '/page_user/user_order?orderNo=' + this.orderinfo.orderNo
					});
				}
			} else {
				console.error('orderInfo is undefined or orderNo is missing');
			}
		},
		time1() {
			const expiryTime = new Date(this.orderinfo.expiryTime); // 获取过期时间
			const now = new Date(); // 获取当前时间

			// 计算时间差(毫秒)
			const timeDifference = expiryTime - now;

			if (timeDifference < 0) {
				return '已超时';
			} else {
				const days = Math.floor(timeDifference / (1000 * 60 * 60 * 24));
				if (days > 0) {
					return `${days}天`;
				}

				const hours = Math.floor((timeDifference % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
				if (hours > 0) {
					return `${hours}小时`;
				}

				const minutes = Math.floor((timeDifference % (1000 * 60 * 60)) / (1000 * 60));
				if (minutes > 0) {
					return `${minutes}分钟`;
				}

				return '即将超时'; // 如果时间差小于1分钟
			}
		},
		time2() {
			console.log(this.orderinfo);
			const expiryTime = new Date(this.orderinfo.expiryTime);

			const month = (expiryTime.getMonth() + 1).toString().padStart(2, '0'); // 获取月份并补零
			const day = expiryTime.getDate().toString().padStart(2, '0'); // 获取日期并补零
			const hours = expiryTime.getHours().toString().padStart(2, '0'); // 获取小时并补零
			const minutes = expiryTime.getMinutes().toString().padStart(2, '0'); // 获取分钟并补零

			return `${month}/${day} ${hours}:${minutes}到期`;
		},
		mapFuns() {
			console.log('点击了');
			uni.openLocation({
				latitude: parseFloat(this.deviceInfos.latitude),  // 将纬度转换为数字
				longitude: parseFloat(this.deviceInfos.longitude), // 将经度转换为数字
				//经度 - 目的地/坐标点
				// name: "荆门市",
				address: '车辆定位'
			});
		},
		mapFun() {
			console.log('点击了');
			uni.openLocation({
				latitude: this.storeInfo.lat,
				//纬度 - 目的地/坐标点
				longitude: this.storeInfo.lng,
				//经度 - 目的地/坐标点
				// name: "荆门市",
				address: this.storeInfo.simpleAddress
			});
		},

		getstoreInfo() {
			let data = {
				storeId: this.orderinfo.storeId
			}
			this.$u.get(`app/getStore?`, data).then((res) => {
				if (res.code == 200) {
					this.storeInfo = res.data
				} else {
					uni.showToast({
						title: res.msg,
						icon: 'none',
						duration: 2000
					});
				}
			});
		},
		deviceInfo() {
			this.$u.get('app/getDeviceBySn?sn=' + this.sn).then((res) => {
				console.log(res, 'rererer');
				if (res.code === 200) {
					// console.log(this.areaId,);
					this.deviceInfos = res.data

				} else {
					uni.showToast({
						title: res.msg,
						icon: 'none',
						duration: 2000
					});
				}
			})

		},


	}
}
</script>




<style lang="scss">
page {
	overflow-y: auto;
	background-image: url('https://lxnapi.ccttiot.com/bike/img/static/uYRs7Cv2Pbp95w3KjGO3');
	background-size: cover;
	/* 背景图片等比缩放以覆盖整个容器 */
	background-position: center;
	/* 背景图片居中显示 */
	background-repeat: no-repeat;
	/* 防止背景图片重复 */
	min-height: 100vh;
	/* 确保页面至少有 100% 的视窗高度,避免高度不足导致无法滚动 */

}

.page {
	width: 750rpx;
	// height: 100vh;
	padding-bottom: 200rpx;

	.page2 {
		width: 750rpx;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		padding-bottom: 0;

		.img {
			margin-top: 200rpx;
			width: 530rpx;
			height: 530rpx;
		}

		.addbtn {
			margin-top: 122rpx;
			display: flex;
			align-items: center;
			justify-content: center;
			width: 614rpx;
			height: 92rpx;
			background: #4297F3;
			box-shadow: 0rpx 2rpx 18rpx 0rpx rgba(0, 0, 0, 0.1);
			border-radius: 16rpx 16rpx 16rpx 16rpx;
			font-weight: 600;
			font-size: 40rpx;
			color: #FFFFFF;

			.addimg {
				margin-right: 20rpx;
				width: 34rpx;
				height: 34rpx;
			}
		}


	}

	.min_map {
		margin: 0 auto;
		margin-top: 44rpx;
		width: 688rpx;
		height: 380rpx;
		border-radius: 40rpx;
		overflow: hidden;
		position: relative;

		.map_top {
			padding: 22rpx;
			display: flex;
			flex-wrap: nowrap;
			align-items: flex-start;
			position: absolute;
			top: 0;
			left: 0;
			width: 688rpx;
			height: 152rpx;
			background: linear-gradient(180deg, #FFFFFF 60%, rgba(255, 255, 255, 0) 100%);
			z-index: 100;

			.map_right {
				display: flex;
				align-items: center;

				.icon-xiangyou1 {
					margin-top: 20rpx;
					margin-right: 28rpx;
					font-size: 40rpx;
					color: #3D3D3D;
				}

			}

			.map_left {
				display: flex;
				align-items: center;

				flex-wrap: wrap;

				.map_left_bottom {
					font-weight: 400;
					font-size: 24rpx;
					color: #3D3D3D;
				}

				.map_left_top {
					display: flex;
					flex-wrap: nowrap;
					align-items: center;

					.map_left_top_tit {
						font-weight: 700;
						font-size: 36rpx;
						color: #3D3D3D;
					}

					.map_left_top_data {
						margin-left: 24rpx;
						font-weight: 400;
						font-size: 24rpx;
						color: #808080;
					}
				}
			}
		}
	}

	.bot_btn {
		position: fixed;

		bottom: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 750rpx;
		height: 174rpx;
		background: #FFFFFF;
		box-shadow: 0rpx 8rpx 20rpx 0rpx rgba(0, 0, 0, 0.3);
		border-radius: 0rpx 0rpx 0rpx 0rpx;

		.btn {
			display: flex;
			align-items: center;
			justify-content: center;
			width: 682rpx;
			height: 84rpx;
			background: #4297F3;
			border-radius: 42rpx 42rpx 42rpx 42rpx;
			font-weight: 500;
			font-size: 36rpx;
			color: #FFFFFF;
		}
	}

	.order_info {

		position: relative;
		margin: 0 auto;
		margin-top: 44rpx;
		padding: 18rpx 24rpx 40rpx;
		width: 698rpx;
		border-radius: 30rpx;
		background: #FFFFFF;

		.btns {
			position: absolute;
			right: 32rpx;
			bottom: 52rpx;
			display: flex;
			align-items: center;
			justify-content: center;
			width: 174rpx;
			height: 68rpx;
			background: #4297F3;
			border-radius: 42rpx 42rpx 42rpx 42rpx;
			font-weight: 600;
			font-size: 36rpx;
			color: #FFFFFF;
		}

		.info_top {
			width: 100%;
			display: flex;
			align-items: center;
			justify-content: space-between;

			.tit1 {
				font-weight: 600;
				font-size: 28rpx;
				color: #3D3D3D;
			}

			.txt1 {
				font-weight: 400;
				font-size: 24rpx;
				color: #3D3D3D;

				image {
					margin-left: 6rpx;
					width: 20rpx;
					height: 20rpx;
				}
			}
		}

		.info_cont {
			width: 100%;
			display: flex;
			flex-wrap: nowrap;
			align-items: center;

			image {
				width: 108rpx;
				height: 108rpx;
			}

			.infos {
				margin-top: 30rpx;
				margin-left: 36rpx;

				.time {
					font-weight: 600;
					font-size: 32rpx;
					color: #3D3D3D;
				}

				.data {
					margin-top: 10rpx;
					font-weight: 400;
					font-size: 32rpx;
					color: #F14C4C;
				}

				.tips1 {
					margin-top: 8rpx;
					font-weight: 400;
					font-size: 28rpx;
					color: #3D3D3D;
				}
			}
		}
	}

	.store_car {

		border-radius: 30rpx;
		width: 696rpx;
		padding: 30rpx 28rpx 0 28rpx;
		margin: 0 auto;
		margin-top: 50rpx;
		// height: 342rpx;
		// margin-bottom: 100rpx;
		background: #FFFFFF;

		.store_btn_li {
			display: flex;
			flex-wrap: nowrap;
			margin-top: 26rpx;
			margin-left: -28rpx;
			border-top: 1rpx solid #D8D8D8;
			width: 696rpx;
			height: 102rpx;

			.store_btn:first-child {
				border-right: 1rpx solid #D8D8D8;
			}

			.store_btn {
				display: flex;
				align-items: center;
				justify-content: center;
				width: 50%;
				height: 102rpx;

				image {
					font-weight: 400;
					font-size: 28rpx;
					color: #3D3D3D;
					margin-right: 18rpx;
					width: 40rpx;
					height: 40rpx;
				}

			}
		}

		.line {
			width: 100%;
			height: 1rpx;
			background: #D8D8D8;
		}

		.address {
			margin-top: 48rpx;
			font-weight: 400;
			font-size: 36rpx;
			color: #3D3D3D;
		}

		.time {
			font-weight: 400;
			font-size: 28rpx;
			color: #3D3D3D;
		}

		.tops {
			display: flex;
			align-items: center;
			font-weight: 600;
			font-size: 36rpx;
			color: #3D3D3D;

			.type {
				margin-right: 10rpx;
				font-weight: 400;
				font-size: 24rpx;
				color: #0D75E5;
				padding: 6rpx 12rpx;
				background: #DCEDFF;
				border-radius: 8rpx 8rpx 8rpx 8rpx;
			}

		}
	}

	.btn_box {
		width: 100%;

		display: flex;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: space-around;

		.btn1 {
			width: 130rpx;
			display: flex;
			flex-wrap: wrap;
			justify-content: center;
			font-weight: 400;
			font-size: 32rpx;
			color: #3D3D3D;

			image {
				margin-bottom: 10rpx;
				width: 120rpx;
				height: 120rpx;
			}
		}

		.btn2 {
			width: 268rpx;
			height: 90rpx;
			display: flex;
			align-items: center;
			justify-content: center;
			background-color: #ebebeb;
			border-radius: 45rpx;
			padding-right: 30rpx;
			position: relative;
			overflow: hidden;

			.slider {
				width: 90rpx;
				height: 90rpx;
				background-color: #fff;
				border-radius: 45rpx;
				position: absolute;
				left: 0;
			}
		}
	}

	.tips {
		margin-top: 18rpx;
		display: flex;
		align-items: center;
		justify-content: center;
		font-weight: 400;
		font-size: 28rpx;
		color: #3D3D3D;

		.yuan {
			margin-right: 14rpx;
			border-radius: 50%;
			width: 16rpx;
			height: 16rpx;
			background: #FF8282;
		}
	}

	.car_img {
		margin: 0 auto;
		margin-top: -108rpx;
		width: 440rpx;
		height: 340rpx;
	}

	.power {
		padding-top: 60rpx;
		margin: 0 auto;
		margin-top: 60rpx;
		width: 562rpx;
		height: 348rpx;
		background-image: url('https://lxnapi.ccttiot.com/bike/img/static/unqrw7KFxtvIjYBfBGus');
		background-size: cover;
		/* 背景图片等比缩放以覆盖整个容器 */
		background-position: center;

		/* 背景图片居中显示 */
		.tit {

			width: 100%;
			text-align: center;
			font-weight: 600;
			font-size: 32rpx;
			color: #3D3D3D;
		}

		.num {
			margin-top: 16rpx;
			width: 100%;
			text-align: center;
			font-weight: 600;
			font-size: 88rpx;
			color: #3D3D3D;

			span {
				font-size: 32rpx;
				font-weight: 500;
			}
		}
	}

	.top {
		margin-top: 200rpx;
		width: 750rpx;
		padding: 0 32rpx;
		display: flex;
		align-items: center;
		justify-content: space-between;

		.model {
			font-weight: 600;
			font-size: 48rpx;
			color: #3D3D3D; 
			image{
				margin-left: 10rpx;
				width: 32rpx;
				height: 26rpx;
			}
		}

		.switch {
			// margin-left: auto;
			width: 272rpx;
			height: 60rpx;
			background: #FFFFFF;
			border-radius: 30rpx 30rpx 30rpx 30rpx;
			font-weight: 400;
			font-size: 32rpx;
			color: #FF8282;
			display: flex;
			flex-wrap: nowrap;
			align-items: center;

			.replay {
				margin-left: 22rpx;
				margin-right: 14rpx;
				width: 32rpx;
				height: 32rpx;
			}

			.bluetooth {
				margin-left: auto;
				width: 60rpx;
				height: 60rpx;
			}
		}
	}

	.fixed {
		z-index: 999;
		position: fixed;
		top: 0;
	}
}
</style>