From b7d451c91ec40bee70f23b1e2cf6a8797643faef Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期六, 25 四月 2026 15:18:58 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 app/pages/certification-details/certification-details.vue |  152 +++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 119 insertions(+), 33 deletions(-)

diff --git a/app/pages/certification-details/certification-details.vue b/app/pages/certification-details/certification-details.vue
index f71c1f1..80da670 100644
--- a/app/pages/certification-details/certification-details.vue
+++ b/app/pages/certification-details/certification-details.vue
@@ -21,11 +21,8 @@
 			<view class="cert-details-page__upload-group">
 				<text class="cert-details-page__upload-title">韬唤璇佹鍙嶉潰</text>
 				<view class="cert-details-page__upload-list">
-					<view class="cert-details-page__upload-card">
-						
-					</view>
-					<view class="cert-details-page__upload-card">
-						
+					<view v-for="(img, index) in idcardImgs" :key="index" class="cert-details-page__upload-card">
+						<image class="cert-details-page__upload-image" :src="img" mode="aspectFill" @click="previewImage(img)"></image>
 					</view>
 				</view>
 			</view>
@@ -44,11 +41,8 @@
 			<view class="cert-details-page__upload-group">
 				<text class="cert-details-page__upload-title">杞﹁締鐓х墖</text>
 				<view class="cert-details-page__upload-list">
-					<view class="cert-details-page__upload-img">
-						
-					</view>
-					<view class="cert-details-page__upload-img">
-						
+					<view v-for="(img, index) in carImgs" :key="index" class="cert-details-page__upload-img">
+						<image class="cert-details-page__upload-image" :src="img" mode="aspectFill" @click="previewImage(img)"></image>
 					</view>
 				</view>
 			</view>
@@ -56,12 +50,24 @@
 			<view class="cert-details-page__upload-group">
 				<text class="cert-details-page__upload-title">椹鹃┒璇佺収鐗�</text>
 				<view class="cert-details-page__upload-list cert-details-page__upload-list--single">
-					<view class="cert-details-page__upload-img">
-						
+					<view v-for="(img, index) in licenseImgs" :key="index" class="cert-details-page__upload-img">
+						<image class="cert-details-page__upload-image" :src="img" mode="aspectFill" @click="previewImage(img)"></image>
+					</view>
+				</view>
+			</view>
+
+			<view class="cert-details-page__upload-group">
+				<text class="cert-details-page__upload-title">鍏跺畠鏉愭枡</text>
+				<view class="cert-details-page__upload-list cert-details-page__upload-list--single">
+					<view v-for="(img, index) in otherImgs" :key="index" class="cert-details-page__upload-img">
+						<image class="cert-details-page__upload-image" :src="img" mode="aspectFill" @click="previewImage(img)"></image>
 					</view>
 				</view>
 			</view>
 		</view>
+
+		<button v-if="statusType === 'rejected'" class="cert-details-page__rebtn" @click="goRecertify">閲嶆柊璁よ瘉</button>
+		<view style="width: 100%; height: 30rpx;" v-if="statusType === 'rejected'"></view>
 	</view>
 </template>
 
@@ -70,21 +76,13 @@
 		data() {
 			return {
 				statusType: 'review',
-				basicInfo: [
-					{ label: '娉ㄥ唽鎵嬫満鍙�', value: '18155114565' },
-					{ label: '鍙告満濮撳悕', value: '鑻忕啓鐔�' },
-					{ label: '濠氬Щ鐘跺喌', value: '鏈' },
-					{ label: '灞呬綇鍩庡競', value: '瀹夊窘鐪�/鍚堣偉甯�/搴愰槼鍖�' },
-					{ label: '璇︾粏鍦板潃', value: '涔濆崕灞辫矾201鍙�' },
-					{ label: '鏀粯瀹濊处鍙�', value: '18155114565' },
-					{ label: '韬唤璇佸彿', value: '3482938472937838902' }
-				],
-				vehicleInfo: [
-					{ label: '杞︾墝鍙�', value: '鐨朆D23189' },
-					{ label: '杞﹁締绫诲瀷', value: '闈㈠寘杞�' },
-					{ label: '杞﹁締棰滆壊', value: '鐧借壊' },
-					{ label: '椹鹃┒璇佹湁鏁堟湡', value: '2016骞�1鏈�1鏃ヨ嚦2036骞�1鏈�1鏃�' }
-				]
+				detailData: null,
+				basicInfo: [],
+				vehicleInfo: [],
+				idcardImgs: [],
+				carImgs: [],
+				licenseImgs: [],
+				otherImgs: []
 			}
 		},
 		computed: {
@@ -101,7 +99,7 @@
 				const descMap = {
 					review: '瀹℃牳缁撴灉灏嗛�氳繃鐭俊/璁㈠崟娑堟伅閫氱煡鎮�',
 					approved: '',
-					rejected: '椹鹃┒璇佽繃鏈燂紝璇烽噸鏂版彁浜ゅ鏍�'
+					rejected: this.detailData?.auditRemark || '璁よ瘉淇℃伅鏈夎锛岃閲嶆柊鎻愪氦瀹℃牳'
 				}
 
 				return descMap[this.statusType] || ''
@@ -116,8 +114,71 @@
 				return iconMap[this.statusType] || iconMap.review
 			}
 		},
-		onLoad(options) {
-			this.statusType = options && options.status ? options.status : 'review'
+		onShow() {
+			this.getVerifyDetail()
+		},
+		methods: {
+			getVerifyDetail() {
+				console.log('1111111')
+				this.$u.api.verifyDetail().then(res => {
+					uni.hideLoading()
+					if (res.code === 200) {
+						this.detailData = res.data
+						this.setStatusType(res.data.auditStatus)
+						this.formatBasicInfo(res.data)
+						this.formatVehicleInfo(res.data)
+						this.formatImages(res.data)
+					}
+				})
+			},
+			setStatusType(auditStatus) {
+				console.log(auditStatus)
+				const map = { 0: 'review', 1: 'approved', 2: 'rejected', 3: 'approved' }
+				this.statusType = map[auditStatus] || 'review'
+			},
+			getMaritalStatusText(status) {
+				const map = { 0: '鏈', 1: '宸插', 2: '绂诲紓', 3: '涓у伓' }
+				return map[status] || '鏈煡'
+			},
+			formatBasicInfo(data) {
+				this.basicInfo = [
+					{ label: '娉ㄥ唽鎵嬫満鍙�', value: data.telephone || '' },
+					{ label: '鍙告満濮撳悕', value: data.name || '' },
+					{ label: '濠氬Щ鐘跺喌', value: this.getMaritalStatusText(data.maritalStatus) },
+					{ label: '灞呬綇鍩庡競', value: [data.provinceName, data.cityName, data.districtName].filter(Boolean).join('/') || '' },
+					{ label: '璇︾粏鍦板潃', value: data.livePlace || '' },
+					{ label: '鏀粯瀹濊处鍙�', value: data.aliAccount || '' },
+					{ label: '鏀粯瀹濆鍚�', value: data.aliName || '' },
+					{ label: '韬唤璇佸彿', value: data.idcard || '' }
+				]
+			},
+			formatVehicleInfo(data) {
+				const startDate = data.cardStartDate ? data.cardStartDate.split(' ')[0].replace(/-/g, '骞�').replace(/鏈�/g, '').replace(/鏃�/g, '') : ''
+				const endDate = data.cardEndDate ? data.cardEndDate.split(' ')[0].replace(/-/g, '骞�').replace(/鏈�/g, '').replace(/鏃�/g, '') : ''
+				this.vehicleInfo = [
+					{ label: '杞︾墝鍙�', value: data.carCode || '' },
+					{ label: '杞﹁締绫诲瀷', value: data.carTypeName || '' },
+					{ label: '杞﹁締棰滆壊', value: data.carColor || '' },
+					{ label: '椹鹃┒璇佹湁鏁堟湡', value: startDate && endDate ? `${startDate}鑷�${endDate}` : '' }
+				]
+			},
+			previewImage(current) {
+				uni.previewImage({
+					current: current,
+					urls: [...this.idcardImgs, ...this.carImgs, ...this.licenseImgs, ...this.otherImgs]
+				})
+			},
+			goRecertify() {
+				uni.navigateTo({
+					url: '/pages/driver-certification/driver-certification'
+				})
+			},
+			formatImages(data) {
+				this.idcardImgs = [data.idcardImg, data.idcardImgBack].filter(Boolean).map(item => data.imgPrefix + item)
+				this.carImgs = data.carImgList.map(item => data.imgPrefix + item.fileurl)
+				this.licenseImgs = data.licenseImgList.map(item => data.imgPrefix + item.fileurl)
+				this.otherImgs = data.otherImgList.map(item => data.imgPrefix + item.fileurl)
+			}
 		}
 	}
 </script>
@@ -215,6 +276,7 @@
 			font-size: 30rpx;
 			color: #777777;
 			flex-shrink: 0;
+			margin-right: 30rpx;
 		}
 
 		&__info-value {
@@ -225,7 +287,9 @@
 		}
 
 		&__upload-group {
-			padding-top: 24rpx;
+			padding: 30rpx 0;
+			box-sizing: border-box;
+			border-bottom: 1rpx solid #E5E5E5;
 		}
 
 		&__upload-title {
@@ -258,11 +322,18 @@
 				height: 124rpx;
 			}
 		}
-		
+
 		&__upload-img {
 			width: 144rpx;
 			height: 144rpx;
-			background-color: #333333;
+			background-color: #f7f8fa;
+			border-radius: 10rpx;
+			overflow: hidden;
+		}
+
+		&__upload-image {
+			width: 100%;
+			height: 100%;
 		}
 
 		&__id-avatar {
@@ -293,5 +364,20 @@
 			height: 144rpx;
 			background: linear-gradient(180deg, #f5f7fa 0%, #eff2f7 100%);
 		}
+
+		&__rebtn {
+			width: calc(100% - 60rpx);
+			height: 88rpx;
+			line-height: 88rpx;
+			background: #10B2FA;
+			color: #ffffff;
+			font-size: 32rpx;
+			border-radius: 44rpx;
+			border: none;
+
+			&::after {
+				border: none;
+			}
+		}
 	}
 </style>

--
Gitblit v1.9.3