<template>
	<view class="contentStyle" style="">
		<view class="status-bar"></view>
		<uni-nav-bar title="车位详情" left-icon="left" @clickLeft="goBack" :border="false" backgroundColor="transparent">
		</uni-nav-bar>


		<scroll-view class="page" scroll-y="true">

			<!-- 顶部状态区 -->
			<view class="status-header">
				<view class="status-icon" :class="statusConfig.iconClass">
					<text class="icon-text">{{ statusConfig.iconText }}</text>
				</view>
				<text class="status-title">{{ statusConfig.title }}</text>

				<!-- 步骤条 -->
				<view class="step-bar">
					<view class="step-item" v-for="(step, index) in stepList" :key="index"
						:class="{ active: index < currentStep, done: index < currentStep - 1 }">
						<view class="step-circle">{{ index + 1 }}</view>
						<text class="step-text">{{ step }}</text>
						<view class="step-line" v-if="index < stepList.length - 1"
							:class="{ active: index < currentStep - 1 }"></view>
					</view>
				</view>
			</view>

			<!-- 房屋信息 -->
			<view class="info-card">
				<view class="card-title">
					<view class="title-line"></view>
					房屋信息
				</view>
				<view class="info-row">
					<text class="info-label">小区</text>
					<text class="info-value">{{form.community}}</text>
				</view>
				<view class="info-row">
					<text class="info-label">停车场</text>
					<text class="info-value">{{form.parkingSpace}}</text>
				</view>
				<view class="info-row">
					<text class="info-label">车位编号</text>
					<text class="info-value">{{form.parkingSpaceNum}}</text>
				</view>
				<view class="info-row">
					<text class="info-label">车位状态</text>
					<text class="info-value"
						:style="{color: form.status === '自用' ? '#FF8F40' : form.status === '租赁' ? '#00aa00' : '#999' }">{{form.status}}</text>
				</view>
			</view>

			<!-- 车辆信息 -->
			<view class="info-card">
				<view class="card-title">
					<view class="title-line"></view>
					车辆信息
				</view>
				<text class="unbind" @click="clickUnbind(item.id)">取消绑定</text>
				<view class="info-row">
					<text class="info-label">车牌号</text>
					<text class="info-value">{{form.carNum}}</text>
				</view>
				<view class="info-row">
					<text class="info-label">车辆品牌</text>
					<text class="info-value">{{form.carBrand}}</text>
				</view>
				<view class="info-row">
					<text class="info-label">车辆型号</text>
					<text class="info-value">{{form.carModel}}</text>
				</view>
				<view class="info-row">
					<text class="info-label">车辆颜色</text>
					<text class="info-value">{{form.carColor}}</text>
				</view>

			</view>


		</scroll-view>
		<!-- 底部操作按钮 -->
		<view class="bottom-btn-wrap">
			<!-- 仅认证失败显示修改按钮 -->
			<button class="btn-modify" @click="onModify">
				修改
			</button>
			<button class="btn-delete" :class="{ 'delete-only': currentStatus !== 'fail' }" @click="onDelete">
				删除
			</button>
		</view>
	</view>



</template>

<script>
	export default {
		onReady: function(e) {},
		components: {

		},
		computed: {
			// 动态计算当前状态配置
			statusConfig() {
				return this.statusMap[this.currentStatus];
			},
			// 动态计算当前步骤
			currentStep() {
				return this.statusConfig.currentStep;
			},

		},

		created() {

		},
		onShow() {

		},
		onLoad(option) {
			this.id = option.id;
			this.currentStatus = option.statusClass;
			// this.currentStatus = 'success';

		},
		mounted() {},
		data() {
			return {
				/* 设定状态栏默认高度 */
				statusBarHeight: 20,
				// 可通过页面传参动态修改状态：success / pending / fail
				id: undefined,
				form: {
					community: "北境碧桂园小区小区",
					parkingSpace: "地下停车场",
					parkingSpaceNum: "02",
					status: '自用',
					carNum: "京A88888",
					carBrand: "宝马",
					carModel: "X5",
					carColor: "白色",
				},
				currentStatus: "",
				stepList: ["车位信息", "物业审核", "认证成功"],
				// 状态配置表
				statusMap: {
					success: {
						title: "车位认证成功",
						iconClass: "icon-success",
						iconText: "✓",
						currentStep: 3,
					},
					pending: {
						title: "车位审核中，请耐心等待",
						iconClass: "icon-pending",
						iconText: "⏳",
						currentStep: 2,
					},
					fail: {
						title: "车位认证失败，请重新提交",
						iconClass: "icon-fail",
						iconText: "✕",
						currentStep: 2,
					},
				},


			}
		},


		methods: {
			clickUnbind(id) {

			},
			// 修改按钮事件（仅认证失败显示）
			onModify() {
				uni.setStorageSync('operationType', 'update');
				uni.redirectTo({
					url: '/pages/my/addParkingSpace?id=' + this.id + '&sourcePage=' + 'addParkingSpace',
					success: res => {},
					fail: () => {},
					complete: () => {}
				});
			},
			// 删除按钮事件
			onDelete() {
				uni.showModal({
					title: "确认删除",
					content: "确认删除此车位信息吗?",
					success: (res) => {
						if (res.confirm) {
							uni.showLoading({
								title: '删除中...',
								mask: true
							});
							setTimeout(() => {
								uni.showToast({
									title: '删除成功',
									icon: 'success'
								});
							}, 1000);
							setTimeout(() => {
								// 提交成功后跳转列表页
								uni.hideLoading();
								this.goBack();
							}, 2500);
						}
					},
				});
			},
			goBack() {
				uni.redirectTo({
					url: '/pages/my/myParkingSpaceIndex',
					success: res => {},
					fail: () => {},
					complete: () => {}
				});
			},

		},


	}
</script>
<style lang="scss">
	page {
		background: #f9f9f9;
	}
</style>

<style scoped>
	.contentStyle {
		display: flex;
		flex-direction: column;
		height: 100vh;
		/* 关键：占满屏幕高度 */
		background-color: #f9f9f9;
	}

	.page {
		flex: 1;
		overflow-y: auto;
		padding: 0px 40rpx;
		box-sizing: border-box;
	}



	/* 顶部状态区 */
	.status-header {
		display: flex;
		flex-direction: column;
		align-items: center;
		padding: 40rpx 30rpx 30rpx;
	}

	.status-icon {
		width: 80rpx;
		height: 80rpx;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		margin-bottom: 20rpx;
	}

	.icon-success {
		background-color: #2F77FD;
	}

	.icon-pending {
		background-color: #2F77FD;
	}

	.icon-fail {
		background-color: #E34D59;
	}

	.icon-text {
		font-size: 40rpx;
		font-weight: bold;
		color: inherit;
	}

	.icon-success .icon-text {
		color: #fff;
	}

	.icon-pending .icon-text {
		color: #fff;
	}

	.icon-fail .icon-text {
		color: #fff;
	}

	.status-title {
		font-size: 30rpx;
		font-weight: 500;
		color: #333;
		margin-bottom: 40rpx;
	}

	/* 步骤条 */
	.step-bar {
		display: flex;
		align-items: center;
		width: 100%;
		justify-content: space-between;
		padding: 0 20rpx;
	}

	.step-item {
		display: flex;
		flex-direction: column;
		align-items: center;
		position: relative;
		flex: 1;
	}

	.step-circle {
		width: 40rpx;
		height: 40rpx;
		border-radius: 50%;
		background-color: #1677ff;
		color: #fff;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 24rpx;
		z-index: 2;
	}

	.step-item.active .step-circle {
		background-color: #1677ff;
	}

	.step-item:not(.active) .step-circle {
		background-color: #e5e5e5;
		color: #999;
	}

	.step-text {
		font-size: 24rpx;
		color: #666;
		margin-top: 10rpx;
		text-align: center;
	}

	.step-line {
		position: absolute;
		top: 20rpx;
		left: 50%;
		width: 100%;
		height: 4rpx;
		background-color: #e5e5e5;
		z-index: 1;
	}

	.step-line.active {
		background-color: #1677ff;
	}

	/* 信息卡片 */
	.info-card {
		/* margin: 0 30rpx 30rpx; */
		padding: 20rpx;
		border: 1rpx solid #f0f0f0;
		background-color: #fff;
		border-radius: 8rpx;
		margin-bottom: 20rpx;
	}

	.card-title {
		display: flex;
		align-items: center;
		font-size: 30rpx;
		font-weight: 500;
		color: #333;
		margin-bottom: 30rpx;
	}

	.title-line {
		width: 8rpx;
		height: 28rpx;
		background-color: #1677ff;
		margin-right: 10rpx;
		border-radius: 4rpx;
	}

	.info-row {
		display: flex;
		margin-bottom: 24rpx;
		align-items: center;
	}

	.info-row:last-child {
		margin-bottom: 0;
	}

	.info-label {
		width: 180rpx;
		font-size: 28rpx;
		color: #666;
	}

	.info-value {
		font-size: 28rpx;
		color: #333;
		flex: 1;
	}

	.status-tag {
		color: #ff7d00;
		font-weight: 500;
	}

	/* 身份证照片区 */
	.photo-row {
		margin-top: 30rpx;
		display: flex;
		flex-direction: column;
	}

	.photo-list {
		display: flex;
		flex-direction: column;
		gap: 20rpx;
		margin-top: 20rpx;
	}

	.photo-item {
		width: 100%;
		height: 170px;
		background-color: #f0f4ff;
		border-radius: 8rpx;
	}

	/* 底部按钮区 */
	.bottom-btn-wrap {
		padding: 20rpx 30rpx 40rpx;
		display: flex;
		gap: 20rpx;
	}

	.btn-modify {
		flex: 1;
		height: 88rpx;
		line-height: 88rpx;
		background-color: #1677ff;
		color: #fff;
		font-size: 30rpx;
		border-radius: 8rpx;
		border: none;
	}

	.btn-delete {
		flex: 1;
		height: 88rpx;
		line-height: 88rpx;
		background-color: #fff;
		color: #f53f3f;
		border: 1rpx solid #f53f3f;
		font-size: 30rpx;
		border-radius: 8rpx;
	}

	.btn-delete.delete-only {
		flex: 1;
	}

	/* 成功提示弹窗 */
	.toast-mask {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		background-color: transparent;
		z-index: 9999;
	}

	.toast-content {
		background-color: rgba(0, 0, 0, 0.8);
		padding: 40rpx 60rpx;
		border-radius: 8rpx;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}

	.toast-icon {
		width: 60rpx;
		height: 60rpx;
		line-height: 60rpx;
		border-radius: 50%;
		background-color: #fff;
		color: #1677ff;
		font-size: 40rpx;
		font-weight: bold;
		margin-bottom: 20rpx;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.toast-text {
		color: #fff;
		font-size: 28rpx;
	}

	.status-bar {
		width: 100vw;
		height: 46px;
	}
</style>