From f3bd5baa8eb4eb7a896f7312a2e9a7c89a46cef5 Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期二, 27 八月 2024 09:18:29 +0800
Subject: [PATCH] ll

---
 h5/pages/driver/reservedDetail.vue |  216 +++++++++++++++++++++++++++++++-----------------------
 1 files changed, 124 insertions(+), 92 deletions(-)

diff --git a/h5/pages/driver/reservedDetail.vue b/h5/pages/driver/reservedDetail.vue
index e87dc36..2303e6f 100644
--- a/h5/pages/driver/reservedDetail.vue
+++ b/h5/pages/driver/reservedDetail.vue
@@ -1,142 +1,171 @@
 <template>
   <view class="main_app">
     <view class="status_wrap">
-      <view class="name">涓佹仼鍑殑璁垮鐢宠</view>
-      <view class="desc">绛夊緟鎴戝鐞�</view>
-      <view class="status">瀹℃壒涓�</view>
+      <view class="name">{{info.driverName}}鐨勫叆鍥绾�</view>
+      <view class="desc">{{info.carCodeFront}}</view>
+      <view class="status">{{ statusMap[info.status] }}</view>
     </view>
     <!--  -->
     <view class="emyty"></view>
     <view class="module_list">
       <view class="item">
-        <view class="label">鎷滆浜�</view>
-        <view class="value">寤栨垚鐟�</view>
+        <view class="label">鍏ュ洯鍘熷洜</view>
+        <view class="value">{{info.inReason}}</view>
       </view>
       <view class="item">
-        <view class="label">棰勮鍏�/绂诲洯鏃堕棿</view>
-        <view class="value">05/01 8:00 - 05/01 18:00</view>
+        <view class="label">鍚堝悓缂栧彿</view>
+        <view class="value">{{info.contractNum}}</view>
       </view>
+			<view class="item">
+			  <view class="label">鍒板満鏃堕棿</view>
+			  <view class="value" v-if="info.arriveDate">{{info.arriveDate.slice(0,16)}}</view>
+			</view>
+			<view class="item">
+			  <view class="label">鍑嗚繍璇佺収鐗�</view>
+			  <view class="value">
+					<image
+						v-if="info.transportImg"
+					  class="avatar_wrap"
+					  :src="info.prefixUrl + info.transportImg"
+					></image>
+				</view>
+			</view>
+			<view class="item">
+			  <view class="label">鍏ュ簱绫诲瀷</view>
+			  <view class="value">{{info.inType == 0 ? '鏁存墭鐩�' : '浠剁儫'}}</view>
+			</view>
+			<view class="item">
+			  <view class="label">鎬昏繍鏁伴噺</view>
+			  <view class="value">{{info.totalNum}}涓囨敮</view>
+			</view>
       <view class="emyty"></view>
       <view class="item">
-        <view class="label">璁垮淇℃伅</view>
-        <view class="value">
-          <image
-            class="avatar"
-            src="@/static/logo@2x.png"
-            mode="widthFix"
-          ></image>
-          <view class="info">
-            <text class="name">瀛欏織 18177665678</text>
-            <text>韬唤璇佸彿锛�3309****2910</text>
-            <text>鍏ュ洯杞﹁締锛氱殩A88789</text>
-          </view>
+        <view class="label">鍙告満濮撳悕</view>
+        <view class="value">{{info.driverName}}
         </view>
       </view>
       <view class="item">
-        <view class="label">鍏徃鍚嶇О</view>
-        <view class="value">涓浗绉诲姩</view>
+        <view class="label">鎵嬫満鍙�</view>
+        <view class="value">{{info.driverPhone}}</view>
       </view>
-      <view class="item">
-        <view class="label">鏂藉伐浜哄憳</view>
-        <view class="value">鍚�</view>
-      </view>
-      <view class="item">
-        <view class="label">鏉ヨ浜嬬敱</view>
-        <view class="value">涓氬姟娲借皥</view>
-      </view>
+			<view class="item">
+			  <view class="label">杞︾墝鐓�</view>
+			  <view class="value">鍓� {{info.carCodeFront}}锛屽悗 {{info.carCodeBack}}</view>
+			</view>
     </view>
     <!-- 娴佺▼ -->
     <view class="flow_wrap">
       <view class="flow_title">娴佺▼</view>
-      <view class="list">
-        <view class="item">
-          <view class="avatar">
-            <image class="img" src="@/static/logo@2x.png" mode="widthFix" />
+      <view class="list" v-if="info.approveDateVO != null && info.approveDateVO.approveList != null">
+        <view class="item" v-for="item,index in info.approveDateVO.approveList">
+    			<view v-if="index != info.approveDateVO.approveList.length - 1" class="separate"></view>
+          <view class="avatar_wrap">
             <image
+              class="img"
+              :src="
+                item.faceImg
+                  ? item.faceImg
+                  : require('@/static/meeting/common/default_user@2x.png')
+              "
+            />
+            <image
+    					v-if="item.status == 2"
               class="status"
               src="@/static/staff/liucheng_success@2x.png"
               mode="widthFix"
             />
-            <view class="separate"></view>
+    				<image
+    					v-if="item.status == 3"
+    				  class="status"
+    				  src="@/static/staff/liucheng_fail@2x.png"
+    				  mode="widthFix"
+    				/>
           </view>
           <view class="content">
             <view class="head">
-              <view class="event">鏌愭煇鎻愪氦鐨勬嫓璁跨敵璇�</view>
-              <view class="time">time</view>
+              <view class="event">{{ item.title }}</view>
+              <view class="time">{{item.createDate}}</view>
             </view>
             <view class="name_wrap">
-              <text>鏉庝笢(<text class="status">澶勭悊涓�</text>)</text>
+              <text>{{item.memberName}}<text v-if="item.statusInfo" class="status">({{item.statusInfo}})</text></text>
             </view>
-            <view class="remark">鍚屾剰鏀捐</view>
-          </view>
-        </view>
-        <view class="item">
-          <view class="avatar">
-            <image class="img" src="@/static/logo@2x.png" mode="widthFix" />
-            <image
-              class="status"
-              src="@/static/staff/liucheng_success@2x.png"
-              mode="widthFix"
-            />
-          </view>
-          <view class="content">
-            <view class="head">
-              <view class="event">鏌愭煇鎻愪氦鐨勬嫓璁跨敵璇�</view>
-              <view class="time">time</view>
-            </view>
-            <view class="name_wrap">
-              <text>鏉庝笢(<text class="status">澶勭悊涓�</text>)</text>
-            </view>
-            <view class="carbon">
-              <view class="carbon_item" v-for="i in 12">
-                <image src="@/static/logo@2x.png" mode="widthFix"></image>
-                <view class="text">name</view>
-              </view>
-            </view>
+    				<view v-if="item.approveType == 1" class="carbon">
+    				  <view class="carbon_item" v-for="child in item.approveList"
+                :key="child.id">
+    				    <image :src="
+                    child.faceImg
+                      ? child.faceImg
+                      : require('@/static/meeting/common/default_user@2x.png')
+                  "></image>
+    				    <view class="text">{{ child.memberName }}</view>
+    				  </view>
+    				</view>
           </view>
         </view>
       </view>
     </view>
     <view class="emyty"></view>
     <view class="main_footer">
-      <view class="btn" @click="handleSub('0')">鎷掔粷</view>
-      <view class="btn agree" @click="handleSub('1')">鍚屾剰</view>
+      <view v-if="info.status == 0 || info.status == 1" class="btn" @click="handleCancel">鎾ゅ洖鐢宠</view>
+       <view v-if="info.status == 0 || info.status == 1" class="btn agree" @click="handleEdit">淇敼</view>
+       <view v-if="info.status == 3" class="btn agree aga" @click="handleAga">鍐嶆鐢宠</view>
     </view>
-
-    <!--  -->
-    <u-popup
-      :show="showApprModal"
-      :round="10"
-      :safeAreaInsetBottom="true"
-      mode="bottom"
-      @close="showApprModal = false"
-    >
-      <view class="appr_modal">
-        <view class="title">鍚屾剰</view>
-        <textarea
-          placeholder="鍚屾剰璇存槑锛岄潪蹇呭~"
-          placeholder-class="placeholder9"
-        />
-        <view class="main_footer">
-          <view class="btn" @click="showApprModal = false">鍙栨秷</view>
-          <view class="btn agree">鎻愪氦</view>
-        </view>
-      </view>
-    </u-popup>
   </view>
 </template>
 
 <script>
+	import { driverApplyDetail, driverCarRevoke } from '@/api'
 export default {
   data() {
     return {
       showApprModal: false,
-      param: {}
+      info: {},
+			statusMap: {
+				0: '寰呭鎵�',
+				1: '瀹℃壒涓�',
+				2: '瀹℃壒閫氳繃',
+				3: '瀹℃壒涓嶉�氳繃',
+				4: '宸插彇娑�',
+			},
     }
   },
+	onLoad(option) {
+		this.getDetail(option.id)
+	},
   methods: {
+		handleCancel(){
+			uni.showModal({
+				title: '鎻愮ず',
+				content: '杩欐槸涓�涓ā鎬佸脊绐�',
+				success: function (res) {
+					if (res.confirm) {
+						console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+					} else if (res.cancel) {
+						console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+					}
+				}
+			});
+			// driverCarRevoke
+		},
+		handleEdit(){},
+		handleAga(){},
+		getDetail(id) {
+			driverApplyDetail({id}).then(res => {
+				this.info = res.data
+				if(this.info.approveDateVO && this.info.approveDateVO.approveList.length > 0 ){
+					this.info.approveDateVO.approveList.forEach(item => {
+						if(item.approveList && item.approveList.length == 1 && item.type !== 1){
+							item.title = item.approveList[0].title
+							item.faceImg = item.approveList[0].faceImg
+							item.memberName = item.approveList[0].memberName
+							item.statusInfo = item.approveList[0].statusInfo
+							item.approveList = []
+						}
+					})
+				}
+			})
+		},
     handleSub(flag) {
-      // this.param.flag = 
       if (flag === '1') {
 
       } else {
@@ -172,7 +201,7 @@
         display: flex;
         margin-bottom: 48rpx;
 
-        .avatar {
+        .avatar_wrap {
           width: 80rpx;
           height: 80rpx;
           position: relative;
@@ -281,7 +310,7 @@
         display: flex;
         align-items: center;
 
-        .avatar {
+        .avatar_wrap {
           margin-right: 20rpx;
           width: 120rpx;
           height: 120rpx;
@@ -319,7 +348,7 @@
 
     .desc {
       font-size: 26rpx;
-      color: #ed4545;
+      color: #999999;
     }
 
     .status {
@@ -339,7 +368,7 @@
     padding-bottom: 64rpx;
     display: flex;
     justify-content: space-between;
-
+		
     .btn {
       width: 336rpx;
       height: 88rpx;
@@ -357,6 +386,9 @@
       color: #fff;
       border: 1rpx solid $uni-color-primary;
     }
+		.aga{
+			width: 100%;
+		}
   }
 
   .appr_modal {

--
Gitblit v1.9.3