From 71f327918029781d6f78dd4e03397c5154e6ccb1 Mon Sep 17 00:00:00 2001
From: yangan <yangan0921@163.com>
Date: 星期六, 27 七月 2024 08:26:39 +0800
Subject: [PATCH] feat:修改线上地址

---
 pages/driver-page/drvier-my/drvier-my.vue | 1311 +++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 1,008 insertions(+), 303 deletions(-)

diff --git a/pages/driver-page/drvier-my/drvier-my.vue b/pages/driver-page/drvier-my/drvier-my.vue
index 6f63d96..e0b4d79 100644
--- a/pages/driver-page/drvier-my/drvier-my.vue
+++ b/pages/driver-page/drvier-my/drvier-my.vue
@@ -1,320 +1,1025 @@
 <template>
-	<view class="driver-my">
-		<view class="jifen">
-			<view class="zheng">
-				<image src="../../../static/image/鏃犱汉鍊煎畧/缁� 38_1.png"></image>
-				<view class="font">
-					<view class="font-top">100</view>
-					<view class="font-bottom">姝gН鍒�</view>
-				</view>
-			</view>
-			<view class="fu">
-				<image src="../../../static/image/鏃犱汉鍊煎畧/缁� 38.png"></image>
-				<view class="font">
-					<view class="font-top">-60</view>
-					<view class="font-bottom">璐熺Н鍒�</view>
-				</view>
-			</view>
-		</view>
+  <view class="driver-my">
+    <view class=""
+          style="height: 446rpx;width: 100%;">
+      <view class="driver-banner">
+        <view class="navgation">鎴戠殑</view>
+        <view class="avatar">
+          <view class="avatar-imgage"
+                :style="{ backgroundImage: `url(${onlineurl}/appimg/image/banner/driverava.png)`, backgroundSize: 'cover', backgroundRepeat: 'no-repeat' }">
+          </view>
+          <view class="avatar-name">{{ userInfo.name || '' }}</view>
+          <view class="edit-button"><u-button type="primary"
+                                              @click="editBtnClick"
+                                              shape="circle"
+                                              plain>缂栬緫涓汉璧勬枡</u-button></view>
+        </view>
+      </view>
+    </view>
+    <view class="information-block">
+      <view class="personal-information">
+        <view class="personal-information-block">
+          <view class="block-main">
+            <view class="information-line"
+                  @click="">
+              <view class="line-label">
+                <image :src="`${onlineurl}/appimg/image/banner/personalicon.png`"
+                       mode="widthFix"></image>
+                <view class="label-text">韬唤璇佸彿</view>
+              </view>
+              <view class="information-value">
+                {{ userInfo.idCard || '' }}
+                <!-- <u-icon name="arrow-right" color="#999999" size="30" v-if="userInfo.idCard"></u-icon> -->
+              </view>
+            </view>
+            <view class="information-line">
+              <view class="line-label">
+                <image :src="`${onlineurl}/appimg/image/banner/phonenum.png`"
+                       mode="widthFix"></image>
+                <view class="label-text">鎵嬫満鍙�</view>
+              </view>
+              <view class="information-value">
+                {{ userInfo.phone || '' }}
+                <!-- <u-icon name="arrow-right" color="#999999" size="30" v-if="userInfo.phone"></u-icon> -->
+              </view>
+            </view>
+            <view class="information-line">
+              <view class="line-label">
+                <image :src="`${onlineurl}/appimg/image/banner/carnum.png`"
+                       mode="widthFix"></image>
+                <view class="label-text">杞︾墝鍙�</view>
+              </view>
+              <view class="information-value">
+                {{ userInfo.carNo || '' }}
+                <!-- <u-icon name="arrow-right" color="#999999" size="30" v-if="userInfo.carNo"></u-icon> -->
+              </view>
+            </view>
+            <view class="information-line">
+              <view class="line-label">
+                <image :src="`${onlineurl}/appimg/image/banner/axisnum.png`"
+                       mode="widthFix"></image>
+                <view class="label-text">杞﹁酱鏁�</view>
+              </view>
+              <view class="information-value">
+                {{ userInfo.axleNum || '' }}
+                <!-- <u-icon name="arrow-right" color="#999999" size="30" v-if="userInfo.axleNum"></u-icon> -->
+              </view>
+            </view>
+            <view class="information-line">
+              <view class="line-label">
+                <image :src="`${onlineurl}/appimg/image/banner/axisnum.png`"
+                       mode="widthFix"></image>
+                <view class="label-text">杞︾墝棰滆壊</view>
+              </view>
+              <view class="information-value">
+                {{ userInfo.vehicleColour || '' }}
+                <!-- <u-icon name="arrow-right" color="#999999" size="30" v-if="userInfo.axleNum"></u-icon> -->
+              </view>
+            </view>
+            <view class="information-line last">
+              <view class="line-label">
+                <image :src="`${onlineurl}/appimg/image/banner/weighnum.png`"
+                       mode="widthFix"></image>
+                <view class="label-text">浣撻噸</view>
+              </view>
+              <view class="information-value">
+                {{ userInfo.weight || '' }}
+              </view>
+            </view>
+          </view>
+        </view>
+      </view>
+    </view>
+    <view class="car-information">
+      <view class="information-main">
+        <view class="information-body">
+          <view class="car-img">
+            <view class="label-title">
+              <image :src="`${onlineurl}/appimg/image/banner/carimg.png`"
+                     mode="widthFix"></image>
+              <view class="label-text">杞﹁締鐓х墖</view>
+            </view>
+            <view class="img-container">
+              <u--image :showLoading="true"
+                        :src="userInfo.carImg != null ? BaseUrl + userInfo.carImg : ''"
+                        width="80px"
+                        height="80px"
+                        @click="imageClick(1)">
+                <view slot="error"
+                      style="font-size: 24rpx;">鍔犺浇澶辫触</view>
+              </u--image>
+            </view>
+          </view>
+          <view class="car-img">
+            <view class="label-title">
+              <image :src="`${onlineurl}/appimg/image/banner/cardimg.png`"
+                     mode="widthFix"></image>
+              <view class="label-text">杞﹀ご杞﹀熬杞﹁韩鐓х墖</view>
+            </view>
+            <view class="img-container special">
+              <view class="img-container_item"
+                    v-for="item in userInfo.bodyCarImg">
+                <u--image :showLoading="true"
+                          :src="BaseUrl+item"
+                          width="80px"
+                          height="80px"
+                          @click="imageClickCarBody(item)">
+                  <view slot="error"
+                        style="font-size: 24rpx;">鍔犺浇澶辫触</view>
+                </u--image>
+              </view>
+            </view>
+            <view style="display: flex;align-items: center;height: 100%; width: 150rpx;"
+                  v-if='userInfo.bodyCarImg?(userInfo.bodyCarImg.length===0?true:false):true'>
+              鏆傛棤鍥剧墖
+            </view>
+          </view>
+          <view class="car-img">
+            <view class="label-title">
+              <image :src="`${onlineurl}/appimg/image/banner/cardimg.png`"
+                     mode="widthFix"></image>
+              <view class="label-text">琛岄┒璇佺収鐗�</view>
+            </view>
+            <view class="img-container">
+              <u--image :showLoading="true"
+                        :src="userInfo.drivingImg != null ? BaseUrl + userInfo.drivingImg : ''"
+                        width="80px"
+                        height="80px"
+                        @click="imageClick(2)">
+                <view slot="error"
+                      style="font-size: 24rpx;">鍔犺浇澶辫触</view>
+              </u--image>
+            </view>
+          </view>
+        </view>
+      </view>
+    </view>
+    <view class="loginout">
+      <view class="loginout-main"><u-button text="淇敼瀵嗙爜"
+                                            type="primary"
+                                            @click="initPwd"
+                                            shape="circle"
+                                            plain></u-button></view>
+      <view class="loginout-main"><u-button text="閫�鍑虹櫥褰�"
+                                            type="primary"
+                                            @click="logout"
+                                            shape="circle"
+                                            plain></u-button></view>
+    </view>
+    <!-- 寮曞椤� -->
+    <view class="noob-tour"
+          style="margin-top: 80rpx;">
+      <combined-title title="鎿嶄綔鎸囧紩"></combined-title>
+      <u-cell-group>
+        <u-cell title="鏂版墜鎸囧紩"
+                name='1'
+                :clickable="true"
+                @click="noobTour">
+          <u-badge type="primary"
+                   value="01"
+                   slot='icon'></u-badge>
+          <u-icon slot="value"
+                  name="arrow-right"
+                  size="30"
+                  color="#b8b8b8"></u-icon>
+        </u-cell>
+      </u-cell-group>
+    </view>
+    <!-- 鍥剧墖棰勮寮瑰嚭妗� -->
+    <view class="previewImage-container">
+      <previewImage ref="previewImage"
+                    :imgs="driverTourImgList"
+                    :saveBtn='false'></previewImage>
+    </view>
 
-		<view class="personal-information-form">
-			<u--form labelPosition="left" :model="userInfo" ref="form1">
-				<u-form-item labelWidth="20%" label="濮撳悕" ref="item1">
-					<u--input v-model="userInfo.name" border="none" inputAlign="right" disabled disabledColor="#fff"></u--input>
-				</u-form-item>
-				<u-form-item labelWidth="20%" label="韬唤璇佸彿" ref="item1">
-					<u--input v-model="userInfo.idCard" border="none" inputAlign="right" disabled disabledColor="#fff"></u--input>
-				</u-form-item>
-				<u-form-item labelWidth="20%" label="鎵嬫満鍙�" ref="item1">
-					<u--input v-model="userInfo.phone" border="none" inputAlign="right" disabled disabledColor="#fff"></u--input>
-				</u-form-item>
-				<u-form-item labelWidth="20%" label="杞︾墝鍙�" ref="item1">
-					<u--input v-model="userInfo.carNo" border="none" inputAlign="right" disabled disabledColor="#fff"></u--input>
-				</u-form-item>
-				<u-form-item labelWidth="20%" label="浣撻噸" ref="item1">
-					<u--input v-model="userInfo.weight" border="none" inputAlign="right" disabled disabledColor="#fff"></u--input>
-				</u-form-item>
-				<u-form-item labelWidth="20%" label="杞﹁酱鏁�" ref="item1">
-					<u--input v-model="userInfo.carNo" border="none" inputAlign="right" disabled disabledColor="#fff"></u--input>
-				</u-form-item>
-				<u-form-item labelWidth="20%" label="杞﹁締鐓х墖" ref="item1">
-					<!-- <u-upload :fileList="fileList1" @afterRead="afterRead" @delete="deletePic" name="1" multiple :maxCount="10" disabled></u-upload> -->
-					<u--image :showLoading="true" :src="src" width="80px" height="80px" @click="imageClick(0)"></u--image>
-				</u-form-item>
-				<u-form-item labelWidth="20%" label="琛岄┒璇佺収鐗�" ref="item1">
-					<!-- <u-upload :fileList="fileList1" @afterRead="afterRead" @delete="deletePic" name="1" multiple :maxCount="10" disabled></u-upload> -->
-					<u--image :showLoading="true" :src="src" width="80px" height="80px" @click="imageClick(1)"></u--image>
-				</u-form-item>
-			</u--form>
-			<view class="push-information-button"><u-button text="淇敼涓汉璧勬枡" type="primary" @click="editBtnClick"></u-button></view>
-		</view>
+    <!-- 鍥剧墖棰勮寮瑰嚭妗� -->
+    <view class="previewImage-container">
+      <u-popup :show="previewImageShow"
+               mode="center"
+               @close="previewImageClose"
+               @open="previewImageOpen">
+        <u--image :src="previewImageSrc != null ? BaseUrl + previewImageSrc : ''"
+                  width="400px"
+                  height="400px"></u--image>
+      </u-popup>
+    </view>
 
-		<!-- 鍥剧墖棰勮寮瑰嚭妗� -->
-		<view class="previewImage-container">
-			<u-popup :show="previewImageShow" mode="center" @close="previewImageClose" @open="previewImageOpen">
-				<u--image :src="previewImageSrc" width="200px" height="200px"></u--image>
-			</u-popup>
-		</view>
+    <!-- 淇敼寮瑰嚭妗� -->
+    <view class="editDriverPopup-container">
+      <u-popup :show="editDriverPopupShow"
+               mode="bottom"
+               @close="editDriverPopupClose"
+               @open="editDriverPopupOpen"
+               :closeable="true">
+        <combined-title title="淇敼涓汉淇℃伅"
+                        style="margin-left:20rpx"></combined-title>
+        <view class="editDriverPopup-container-box">
+          <u--form labelPosition="left"
+                   :model="editUserInfo"
+                   ref="editRef">
+            <u-form-item labelWidth="20%"
+                         label="濮撳悕"
+                         prop="name"
+                         required>
+              <u--input v-model="editUserInfo.name"
+                        border="none"
+                        inputAlign="left"></u--input>
+            </u-form-item>
+            <u-form-item labelWidth="20%"
+                         label="韬唤璇佸彿"
+                         prop="idCard"
+                         required>
+              <u--input v-model="editUserInfo.idCard"
+                        border="none"
+                        inputAlign="left"></u--input>
+            </u-form-item>
+            <u-form-item labelWidth="20%"
+                         label="鎵嬫満鍙�"
+                         prop="phone"
+                         required>
+              <u--input v-model="editUserInfo.phone"
+                        border="none"
+                        inputAlign="left"></u--input>
+            </u-form-item>
+            <u-form-item labelWidth="20%"
+                         label="淇敼瀵嗙爜"
+                         prop="password">
+              <u--input v-model="editUserInfo.password"
+                        border="none"
+                        inputAlign="left"></u--input>
+            </u-form-item>
+            <u-form-item labelWidth="20%"
+                         label="杞︾墝鍙�"
+                         prop="carNo"
+                         required>
+              <u--input v-model="editUserInfo.carNo"
+                        border="none"
+                        inputAlign="left"></u--input>
+            </u-form-item>
+            <u-form-item labelWidth="20%"
+                         label="杞︾墝棰滆壊"
+                         required
+                         prop="vehicleColour">
+              <u-radio-group v-model="editUserInfo.vehicleColour"
+                             placement="row"
+                             size="30"
+                             shape="circle"
+                             iconSize="20">
+                <u-radio labelSize="14px"
+                         size="20px"
+                         :customStyle="{ marginBottom: '8px' }"
+                         v-for="(item, index) in radiolist2"
+                         :key="index"
+                         :label="item.name"
+                         :name="item.value"></u-radio>
+              </u-radio-group>
+            </u-form-item>
+            <u-form-item labelWidth="20%"
+                         label="浣撻噸"
+                         prop="weight"
+                         required>
+              <u--input v-model="editUserInfo.weight"
+                        border="none"
+                        inputAlign="left"
+                        placeholder="浣撻噸浠g浣滀负鍗曚綅"></u--input>
+            </u-form-item>
+            <u-form-item labelWidth="20%"
+                         label="杞﹁酱鏁�"
+                         prop="axleNum"
+                         required>
+              <u--input v-model="editUserInfo.axleNum"
+                        border="none"
+                        inputAlign="left"></u--input>
+            </u-form-item>
+            <u-form-item labelWidth="25%"
+                         label="杞﹁締鐓х墖"
+                         @click="beforeRead"
+                         prop="carImg"
+                         >
+              <u-upload :fileList="fileList1"
+                        @afterRead="afterRead"
+                        @delete="deletePic"
+                        name="1"
+                        multiple
+                        :maxCount="1"
+                        width="250"
+                        height="150"
+                        :previewFullImage="true"></u-upload>
+            </u-form-item>
+            <u-form-item prop="bodyofcarJpg"
+                         label="杞﹀ご杞﹀熬杞﹁韩鐓х墖"
+                         labelWidth="20%"
 
-		<!-- 淇敼寮瑰嚭妗� -->
-		<view class="editDriverPopup-container">
-			<u-popup :show="editDriverPopupShow" mode="bottom" @close="editDriverPopupClose" @open="editDriverPopupOpen">
-				<view class="editDriverPopup-container-box">
-					<u--form labelPosition="left" :model="userInfo" ref="form1">
-						<u-form-item labelWidth="20%" label="濮撳悕" ref="item1"><u--input v-model="userInfo.name" border="none" inputAlign="left"></u--input></u-form-item>
-						<u-form-item labelWidth="20%" label="韬唤璇佸彿" ref="item1"><u--input v-model="userInfo.idCard" border="none" inputAlign="left"></u--input></u-form-item>
-						<u-form-item labelWidth="20%" label="鎵嬫満鍙�" ref="item1"><u--input v-model="userInfo.phone" border="none" inputAlign="left"></u--input></u-form-item>
-						<u-form-item labelWidth="20%" label="杞︾墝鍙�" ref="item1"><u--input v-model="userInfo.carNo" border="none" inputAlign="left"></u--input></u-form-item>
-						<u-form-item labelWidth="20%" label="浣撻噸" ref="item1"><u--input v-model="userInfo.weight" border="none" inputAlign="left"></u--input></u-form-item>
-						<u-form-item labelWidth="20%" label="杞﹁酱鏁�" ref="item1"><u--input v-model="userInfo.carCS" border="none" inputAlign="left"></u--input></u-form-item>
-						<u-form-item labelWidth="20%" label="杞﹁締鐓х墖" ref="item1">
-							<u-upload :fileList="fileList1" @afterRead="afterRead" @delete="deletePic" name="1" multiple :maxCount="10"></u-upload>
-						</u-form-item>
-						<u-form-item labelWidth="20%" label="琛岄┒璇佺収鐗�" ref="item1">
-							<u-upload :fileList="fileList1" @afterRead="afterRead" @delete="deletePic" name="1" multiple :maxCount="10"></u-upload>
-						</u-form-item>
-					</u--form>
-					<u-button text="鎻愪氦" @click="updateUser" type="primary"></u-button>
-				</view>
-			</u-popup>
-		</view>
-	</view>
+                         @click="beforeRead">
+              <u-upload :fileList="fileList3"
+                        deletable
+                        @afterRead="afterRead"
+                        @delete="deletePic"
+                        name="3"
+                        multiple
+                        :maxCount="3"
+                        width="250"
+                        height="150"
+                        :previewFullImage="true">
+              </u-upload>
+            </u-form-item>
+            <u-form-item labelWidth="25%"
+                         label="琛岄┒璇佺収鐗�"
+                         ref="item1"
+                         @click="beforeRead"
+                         prop="drivingImg"
+                         >
+              <u-upload :fileList="fileList2"
+                        @afterRead="afterRead"
+                        @delete="deletePic"
+                        name="2"
+                        multiple
+                        :maxCount="1"
+                        width="250"
+                        height="150"
+                        :previewFullImage="true"></u-upload>
+            </u-form-item>
+          </u--form>
+          <u-button text="鎻愪氦"
+                    @click="updateUser"
+                    type="primary"></u-button>
+        </view>
+      </u-popup>
+    </view>
+    <view class="logoutModel">
+      <u-modal :show="logoutShow"
+               :title="logoutTitle"
+               showCancelButton
+               :content="logoutContent"
+               @confirm="logoutConfirm"
+               @cancel="logoutCancel"></u-modal>
+    </view>
+    <view class="initPwdModal">
+      <u-modal :show="initPwdShow"
+               title="閲嶇疆瀵嗙爜"
+               showCancelButton
+               content="鍒濆瀵嗙爜灏嗗彉鏇翠负123456,鏄惁纭閲嶇疆"
+               @confirm="initPwdConfirm"
+               @cancel="initPwdCancel"></u-modal>
+    </view>
+  </view>
 </template>
 
 <script>
-import { customerId, userInfo } from '@/utils/status';
+import { customerId, userInfo, redirectLogin } from '@/utils/status';
+import { BaseUrl } from '@/api/publicInterface.js';
+import { mapMutations, mapState } from 'vuex';
+import { onlineurl } from '@/api/request.js'
+import combinedTitle from '@/components/combined-title/combined-title.vue';
+import previewImage from '@/components/kxj-previewImage/kxj-previewImage.vue';
 export default {
-	data() {
-		return {
-			userInfo: {
-				carCS:'',
-			},
-			src: 'https://cdn.uviewui.com/uview/album/1.jpg',
-			fileList1: [],
-			// 淇敼淇℃伅寮瑰嚭妗�
-			editDriverPopupShow: false,
-			// previewImage
-			previewImageShow: false,
-			previewImageSrc: 'https://cdn.uviewui.com/uview/album/1.jpg'
-		};
-	},
-	onShow() {
-		// this.init();
-	},
-	methods: {
-		init() {
-			// this.getUserById();
-			this.getUserEntity();
-		},
-		getUserEntity() {
-			uni.showLoading({
-				title: '鍔犺浇涓�...'
-			});
-			this.$reqGet('getUserEntity').then(res => {
-				console.log(res, '鍙告満璇︽儏');
-				uni.hideLoading();
-				this.userInfo = res.data;
-			});
-		},
-		// 鑾峰彇鐢ㄦ埛淇℃伅
-		// getUserById() {
-		// 	uni.showLoading({
-		// 		title: '鍔犺浇涓�...'
-		// 	});
-		// 	this.$reqPost('getUserById', { id: customerId }, 'params').then(res => {
-		// 		uni.hideLoading();
-		// 		this.userInfo = res.data;
-		// 	});
-		// },
-		// 淇敼鎸夐挳鐐瑰嚮
-		editBtnClick() {
-			this.editDriverPopupShow = true;
-		},
-		imageClick(index) {
-			// 閫氳繃index鍒囨崲鍥剧墖
-			console.log('鍒囨崲鍥剧墖', index);
-			this.previewImageShow = true;
-		},
-		// 鍒犻櫎
-		deletePic(event) {
-			this[`fileList${event.name}`].splice(event.index, 1);
-		},
-		// 鏂板鍥剧墖
-		async afterRead(event) {
-			// 褰撹缃� mutiple 涓� true 鏃�, file 涓烘暟缁勬牸寮忥紝鍚﹀垯涓哄璞℃牸寮�
-			let lists = [].concat(event.file);
-			let fileListLen = this[`fileList${event.name}`].length;
-			lists.map(item => {
-				this[`fileList${event.name}`].push({
-					...item,
-					status: 'uploading',
-					message: '涓婁紶涓�'
-				});
-			});
-			for (let i = 0; i < lists.length; i++) {
-				const result = await this.uploadFilePromise(lists[i].url);
-				let item = this[`fileList${event.name}`][fileListLen];
-				this[`fileList${event.name}`].splice(
-					fileListLen,
-					1,
-					Object.assign(item, {
-						status: 'success',
-						message: '',
-						url: result
-					})
-				);
-				fileListLen++;
-			}
-		},
-		uploadFilePromise(url) {
-			return new Promise((resolve, reject) => {
-				let a = uni.uploadFile({
-					url: 'http://192.168.2.21:7001/upload', // 浠呬负绀轰緥锛岄潪鐪熷疄鐨勬帴鍙e湴鍧�
-					filePath: url,
-					name: 'file',
-					formData: {
-						user: 'test'
-					},
-					success: res => {
-						setTimeout(() => {
-							resolve(res.data.data);
-						}, 1000);
-					}
-				});
-			});
-		},
-		/**
-		 * @preview 棰勮鍥剧墖
-		 */
-		previewImageClose() {
-			this.previewImageShow = false;
-		},
-		previewImageOpen() {
-			console.log('preview open');
-		},
-		/**
-		 * @editPopup 淇敼寮瑰嚭妗嗕簨浠�
-		 */
-		editDriverPopupClose() {
-			this.editDriverPopupShow = false;
-		},
-		editDriverPopupOpen() {
-			console.log('鎵撳紑浜�');
-		},
-		// 淇敼鐢ㄦ埛淇℃伅
-		updateUser() {
-			this.$reqPost('updateUser', this.userInfo, 'params').then(res => {
-				console.log('鏇存柊鏁版嵁', res);
-				this.editDriverPopupShow = false;
-				if (res.code == 0) {
-					this.$u.toast('淇敼鎴愬姛');
-					this.getUserById();
-				} else {
-					uni.showToast({
-						title: res.msg,
-						icon: 'none',
-						duration: 2000
-					});
-				}
-			});
-		}
-	}
+  components: {
+    combinedTitle,
+    previewImage
+  },
+  computed: {
+    ...mapState(['driverTourImgList']),
+  },
+  data() {
+    return {
+      // 鑾峰彇鐨勫徃鏈鸿鎯�
+      userInfo: {},
+      // 淇敼鍙告満璇︽儏
+      editUserInfo: {
+        phone: '',
+        name: '',
+        username: '',
+        type: 3,
+        idCard: '',
+        carNo: '',
+        carImg: '',
+        drivingImg: '',
+        axleNum: '',
+        weight: '',
+        userId: '',
+        vehicleColour: '',
+        bodyofcarJpg: '',
+        password: ''
+      },
+      rules: {
+        name: {
+          type: 'string',
+          required: true,
+          message: '璇峰~鍐欏鍚�',
+          trigger: ['blur', 'change']
+        },
+        idCard: [{
+          type: 'string',
+          required: true,
+          message: '璇疯緭鍏ヨ韩浠借瘉鍙�',
+          trigger: ['blur', 'change']
+        },
+          {
+            pattern: /^([1-6][1-9]|50)\d{4}(18|19|20)\d{2}((0[1-9])|10|11|12)(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/,
+            message: '韬唤璇佸彿鏍煎紡涓嶆纭�'
+          }
+        ],
+        phone: [{
+          required: true,
+          message: '姝ら」涓哄繀濉」',
+          // blur鍜宑hange浜嬩欢瑙﹀彂妫�楠�
+          trigger: ['blur', 'change']
+        },
+          {
+            min: 11,
+            max: 11,
+            message: '璇疯緭鍏ュ悎娉曟墜鏈哄彿'
+          },
+          {
+            validator: (rule, value, callback) => {
+              return uni.$u.test.mobile(value);
+            },
+            message: '鎵嬫満鍙风爜鏍煎紡涓嶆纭�',
+            trigger: ['change', 'blur']
+          }
+        ],
+        weight: {
+          type: 'number',
+          required: true,
+          trigger: ['blur', 'change'],
+          transform(value) {
+            return Number(value);
+          },
+          validator: (rule, value, callback) => {
+            if (!value) {
+              callback(new Error('璇峰~鍐欎綋閲�'))
+            } else if (value > 200) {
+              callback(new Error('璇峰~鍐欏悎鐞嗕綋閲�'))
+            } else {
+              callback()
+            }
+          }
+        },
+        password: {
+          required: false,
+        },
+        carNo: [{
+          type: 'string',
+          required: false,
+          message: '璇疯緭鍏ヨ溅鐗屽彿',
+          trigger: ['blur', 'change']
+        },
+          {
+            transform(value) {
+              return String(value);
+            },
+            validator: (rule, value, callback) => {
+              return uni.$u.test.carNo(value);
+            },
+            message: '璇疯緭鍏ユ纭殑杞︾墝鍙�',
+            trigger: ['change', 'blur']
+          }
+        ],
+        vehicleColour: {
+          type: 'string',
+          required: true,
+          message: '璇烽�夋嫨杞︾墝棰滆壊',
+          trigger: ['blur', 'change']
+        },
+        axleNum: [{
+          transform(value) {
+            return Number(value);
+          },
+          validator: (rule, value, callback) => {
+            return value <= 10;
+          },
+          message: '璇疯緭鍏ユ纭殑杞﹁酱鏁�',
+          trigger: ['change', 'blur']
+        }],
+        carImg: {
+          type: 'string',
+          message: '璇蜂笂浼犺溅杈嗗浘鐗�',
+          trigger: ['blur', 'change']
+        },
+        bodyofcarJpg: {
+          type: 'string',
+          message: '璇蜂笂浼犺溅杈嗗浘鐗�',
+          trigger: ['blur', 'change']
+        },
+        drivingImg: {
+          type: 'string',
+          message: '璇蜂笂浼犺椹惰瘉鐓х墖',
+          trigger: ['blur', 'change']
+        }
+      },
+      src: '',
+      fileList1: [],
+      fileList2: [],
+      // 杞﹀ご杞﹁韩杞﹀熬鐓х墖
+      fileList3: [],
+      carBody: [],
+      // 淇敼淇℃伅寮瑰嚭妗�
+      editDriverPopupShow: false,
+      // previewImage
+      previewImageShow: false,
+      previewImageSrc: '',
+      // 閫�鍑烘ā鎬佹
+      logoutShow: false,
+      logoutTitle: '鎻愮ず',
+      logoutContent: '鏄惁纭閫�鍑�',
+      BaseUrl,
+      onlineurl,
+      radiolist2: [{
+        name: '榛勮壊',
+        value: '榛勮壊'
+      },
+        {
+          name: '榛勭豢鑹�',
+          value: '榛勭豢鑹�'
+        },
+        {
+          name: '钃濊壊',
+          value: '钃濊壊'
+        }
+      ],
+      initPwdShow: false
+    };
+  },
+  onShow() {
+    // this.init();
+  },
+  onReady() {
+    this.$refs.editRef.setRules(this.rules);
+  },
+  methods: {
+    ...mapMutations(['changeisUploadimg', 'changeisLogin']),
+    init() {
+      this.getUserEntity();
+    },
+    getUserEntity() {
+      uni.showLoading({
+        title: '鍔犺浇涓�...'
+      });
+      this.$reqGet('getUserEntity').then(res => {
+        uni.hideLoading();
+        this.editUserInfo = this.userInfo = res.data;
+        this.userInfo.bodyCarImg = this.userInfo.bodyofcarJpg ? this.userInfo.bodyofcarJpg.split(',') :
+            [];
+        console.log(this.userInfo.bodyCarImg);
+        this.editUserInfo.password = ""
+        uni.setStorageSync('carImg', this.userInfo.carImg);
+        uni.setStorageSync('drivingImg', this.userInfo.drivingImg);
+        uni.setStorageSync('bodyofcarJpg', this.userInfo.bodyofcarJpg)
+        if (this.fileList1.length == 0) {
+
+          this.fileList1.push({
+            url: `${BaseUrl}${this.userInfo.carImg}`
+          })
+        }
+        if (this.fileList2.length == 0) {
+          if (!this.userInfo.drivingImg) return
+          this.fileList2.push({
+            url: `${BaseUrl}${this.userInfo.drivingImg}`
+          });
+        }
+        if (this.fileList3.length == 0) {
+          if (!this.userInfo.bodyofcarJpg) return
+          if (this.userInfo.bodyofcarJpg.indexOf(',') !== -1) {
+            let bodyofcarJpg = this.userInfo.bodyofcarJpg.split(',')
+            bodyofcarJpg.forEach(v => {
+              this.fileList3.push({
+                url: `${BaseUrl}${v}`
+              });
+            })
+          } else {
+            this.fileList3.push({
+              url: `${BaseUrl}${this.userInfo.bodyofcarJpg}`
+            });
+          }
+        }
+      });
+    },
+    // 淇敼鎸夐挳鐐瑰嚮
+    editBtnClick() {
+      this.editDriverPopupShow = true;
+    },
+    imageClick(index) {
+      if (index == 1) {
+        this.previewImageSrc = this.userInfo.carImg;
+      } else {
+        this.previewImageSrc = this.userInfo.drivingImg;
+      }
+      this.$nextTick(() => {
+        this.previewImageShow = true;
+      });
+    },
+    imageClickCarBody(url) {
+      this.previewImageSrc = url;
+      this.$nextTick(() => {
+        this.previewImageShow = true;
+      });
+    },
+    beforeRead() {
+      this.changeisUploadimg(true);
+    },
+    // 鍒犻櫎
+    deletePic(event) {
+      this.changeisUploadimg(true);
+      this[`fileList${event.name}`].splice(event.index, 1);
+    },
+    // 鏂板鍥剧墖
+    async afterRead(event) {
+      // 褰撹缃� mutiple 涓� true 鏃�, file 涓烘暟缁勬牸寮忥紝鍚﹀垯涓哄璞℃牸寮�
+      let lists = [].concat(event.file);
+      let fileListLen = this[`fileList${event.name}`].length;
+      lists.map(item => {
+        this[`fileList${event.name}`].push({
+          ...item,
+          status: 'uploading',
+          message: '涓婁紶涓�'
+        });
+      });
+      for (let i = 0; i < lists.length; i++) {
+        const result = await this.uploadFilePromise(lists[i].url, event.name);
+        let item = this[`fileList${event.name}`][fileListLen];
+        this[`fileList${event.name}`].splice(
+            fileListLen,
+            1,
+            Object.assign(item, {
+              status: 'success',
+              message: '涓婁紶鎴愬姛',
+              url: result
+            })
+        );
+        fileListLen++;
+      }
+    },
+    uploadFilePromise(url, num) {
+      return new Promise((resolve, reject) => {
+        let a = uni.uploadFile({
+          url: BaseUrl + '/admin/sys-file/uploadUnToken',
+          filePath: url,
+          name: 'file',
+          success: res => {
+            if (num == 1) {
+              this.editUserInfo.carImg = JSON.parse(res.data).data.url;
+              uni.setStorageSync('carImg', JSON.parse(res.data).data.url);
+              resolve(`${BaseUrl}${JSON.parse(res.data).data.url}`);
+            } else if (num == 2) {
+              this.editUserInfo.drivingImg = JSON.parse(res.data).data.url;
+              uni.setStorageSync('drivingImg', JSON.parse(res.data).data.url);
+              resolve(`${BaseUrl}${JSON.parse(res.data).data.url}`);
+            } else if (num == 3) {
+              let imageUrl = JSON.parse(res.data).data.url
+              this.carBody.push(imageUrl)
+              uni.setStorageSync('bodyofcarJpg', this.carBody.join(','));
+              this.editUserInfo.bodyofcarJpg = this.carBody.join(',')
+              resolve(`${BaseUrl}${JSON.parse(res.data).data.url}`);
+            }
+          }
+        });
+      });
+    },
+    /**
+     * @preview 棰勮鍥剧墖
+     */
+    previewImageClose() {
+      this.previewImageShow = false;
+    },
+    previewImageOpen() {
+      console.log('preview open');
+    },
+    /**
+     * @editPopup 淇敼寮瑰嚭妗嗕簨浠�
+     */
+    editDriverPopupClose() {
+      this.editDriverPopupShow = false;
+    },
+    editDriverPopupOpen() {
+      console.log('鎵撳紑浜�');
+    },
+    // 淇敼鐢ㄦ埛淇℃伅
+    updateUser() {
+      this.editUserInfo = {
+        ...this.editUserInfo,
+        carImg: uni.getStorageSync('carImg'),
+        drivingImg: uni.getStorageSync('drivingImg'),
+        bodyofcarJpg: uni.getStorageSync('bodyofcarJpg')
+      };
+      if(this.fileList3 && this.fileList3.length > 0) {  //杞﹀ご杞﹀熬杞﹁韩闇�瑕�3寮犲浘鐗囦篃鍙互涓�寮犱篃涓嶄紶
+        if(this.fileList3.length !== 3) {
+          this.$u.toast('杞﹀ご杞﹀熬杞﹁韩闇�瑕�3寮犲浘鐗�');
+          return
+        }
+      }
+      this.$refs.editRef
+          .validate()
+          .then(res => {
+            this.$reqPost('updateUser', this.editUserInfo, 'json').then(res => {
+              console.log('鏇存柊鏁版嵁', res);
+              this.editDriverPopupShow = false;
+              if (res.code == 0) {
+                this.$u.toast('淇敼鎴愬姛');
+                this.init();
+              } else {
+                uni.showToast({
+                  title: res.msg,
+                  icon: 'none',
+                  duration: 2000
+                });
+              }
+            });
+          })
+          .catch(err => {
+            this.$u.toast('淇敼澶辫触');
+          });
+    },
+    initPwd() {
+      uni.navigateTo({
+        url: `/pages/login/resetPassword/resetPassword`
+      })
+    },
+    initPwdConfirm() {
+      this.initPwdShow = false
+      uni.showLoading({
+        title: '鍔犺浇涓�...'
+      });
+      this.editUserInfo.password = '123456';
+      this.editUserInfo.carImg = uni.getStorageSync('carImg');
+      this.editUserInfo.drivingImg = uni.getStorageSync('drivingImg')
+      this.$reqPost('updateUser', this.editUserInfo, 'json').then(res => {
+        uni.hideLoading()
+        if (res.code == 0) {
+          uni.showToast({
+            title: '閲嶇疆鎴愬姛',
+            duration: 2000,
+            icon: 'success'
+          })
+        } else {
+          this.$u.toast(res.msg ? res.msg : '淇敼澶辫触');
+        }
+      }).catch(err => {
+        this.$u.toast('淇敼澶辫触');
+      });
+    },
+    initPwdCancel() {
+      this.initPwdShow = false
+    },
+    logout() {
+      this.logoutShow = true;
+    },
+    logoutConfirm() {
+      redirectLogin();
+      this.changeisLogin(false)
+      this.$store.dispatch('websocketOnClose')
+    },
+    logoutCancel() {
+      this.logoutShow = false;
+    },
+    noobTour() {
+      this.$refs.previewImage.open('https://mx.jzeg.cn:9095/appimg/image/tour/driver/sj1.jpg')
+    }
+  }
 };
 </script>
 
-<style lang="scss" scoped>
+<style lang="scss"
+       scoped>
+@mixin flex {
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+}
+
 ::v-deep.driver-my {
-	width: 90%;
-	margin: 0 auto;
-	padding-bottom: vww(60);
-	// 绉垎
-	.jifen {
-		margin-top: vww(24);
-		width: 100%;
-		height: vww(120);
-		background: #ffffff;
-		border-radius: 8px;
-		box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
-		display: flex;
-		flex-direction: row;
-		align-items: center;
-		.zheng {
-			width: 50%;
-			display: flex;
-			image {
-				margin-left: vww(32);
-				width: vww(48);
-				height: vww(48);
-			}
-			.font {
-				margin-left: vww(8);
-				&-top {
-					font-size: vww(28);
-					font-weight: 700;
-					text-align: left;
-					color: #1987ff;
-				}
-				&-bottom {
-					font-size: 14px;
-					font-weight: 400;
-					text-align: left;
-					color: #111111;
-				}
-			}
-		}
-		.fu {
-			width: 50%;
-			display: flex;
-			image {
-				margin-left: vww(32);
-				width: vww(48);
-				height: vww(48);
-			}
-			.font {
-				margin-left: vww(8);
-				&-top {
-					font-size: vww(28);
-					font-weight: 700;
-					text-align: left;
-					color: #ff4233;
-				}
-				&-bottom {
-					font-size: 14px;
-					font-weight: 400;
-					text-align: left;
-					color: #111111;
-				}
-			}
-		}
-	}
-	// 琛ㄥ崟
-	.personal-information-form {
-		margin-top: vww(24);
-		.push-information-button {
-			margin: vww(20) auto 0;
-			width: 80%;
-		}
-	}
+  width: 100%;
+  margin: 0 auto;
+  padding-bottom: vww(100);
 
-	// 棰勮鍥剧墖
-	.previewImage-container {
-	}
+  .driver-banner {
+    width: 100%;
+    height: 430rpx;
+    background: linear-gradient(0deg, #ffffff 0%, #0055fe 100%);
+    background-size: contain;
+    position: fixed;
+    top: 0;
 
-	// 淇敼寮瑰嚭妗�
-	.editDriverPopup-container {
-		.u-popup {
-			.u-transition {
-				height: 95%;
+    .navgation {
+      width: 80rpx;
+      height: 37rpx;
+      font-size: 40rpx;
+      font-weight: normal;
+      color: #ffffff;
+      line-height: 69rpx;
+      margin: vww(60) auto;
+    }
 
-				.u-popup__content {
-					overflow: scroll !important;
-					.editDriverPopup-container-box {
-						width: 90%;
-						margin: 0 auto;
-					}
-				}
-			}
-		}
-	}
+    .avatar {
+      width: 100%;
+      height: 430rpx;
+      display: flex;
+      align-items: center;
+      position: fixed;
+      top: 0;
+
+      .avatar-imgage {
+        width: 98rpx;
+        height: 98rpx;
+        margin-left: vww(18);
+        @include flex;
+        justify-content: center;
+      }
+
+      .avatar-name {
+        width: 200rpx;
+        display: flex;
+        flex-wrap: wrap;
+        height: 32rpx;
+        font-size: 34rpx;
+        font-weight: bold;
+        color: #ffffff;
+        margin-left: vww(17);
+      }
+
+      .edit-button {
+        position: relative;
+        left: vww(73);
+        top: vww(4);
+      }
+    }
+  }
+
+  .information-block {
+    width: 100%;
+
+    .personal-information {
+      width: 100%;
+      display: flex;
+      justify-content: center;
+      position: relative;
+      top: vww(-20);
+
+      &-block {
+        width: 690rpx;
+        height: 550rpx;
+        background: #ffffff;
+        box-shadow: 0rpx 0rpx 14rpx 0rpx rgba(73, 120, 240, 0.14), 0rpx 7rpx 45rpx 0rpx rgba(73, 120, 240, 0.12);
+        border-radius: 20rpx;
+        display: flex;
+        flex-direction: column;
+        justify-content: space-between;
+
+        .block-main {
+          width: 636rpx;
+          margin: vww(10) vww(14);
+        }
+
+        .information-line {
+          @include flex width: 636rpx;
+          height: vww(45);
+          border-bottom: 1rpx solid #f0f1f6;
+
+          .line-label {
+            width: 188rpx;
+            height: 90rpx;
+
+            @include flex image {
+            width: 50rpx;
+            height: 50rpx;
+          }
+
+            .label-text {
+              width: 120rpx;
+              font-size: 30rpx;
+              font-weight: 400;
+              color: #000000;
+              line-height: 85rpx;
+            }
+          }
+
+          .information-value {
+            min-width: vww(125);
+            @include flex;
+            font-size: 30rpx;
+            font-weight: 400;
+            color: #000000;
+            line-height: 85rpx;
+          }
+        }
+
+        .last {
+          border-bottom: 0;
+        }
+      }
+    }
+  }
+
+  .car-information {
+    width: 100%;
+    position: relative;
+    @include flex justify-content: center;
+
+    .information-main {
+      width: 690rpx;
+      height: 828rpx;
+      background: #ffffff;
+      box-shadow: 0rpx 0rpx 14rpx 0rpx rgba(73, 120, 240, 0.14), 0rpx 7rpx 45rpx 0rpx rgba(73, 120, 240, 0.12);
+      border-radius: 20rpx;
+
+      .information-body {
+        width: 636rpx;
+        margin: vww(15) vww(14);
+        @include flex flex-direction: column;
+
+        .car-img {
+          height: 246rpx;
+          width: 100%;
+          @include flex;
+          flex-direction: column;
+          align-items: flex-start;
+
+          .label-title {
+            @include flex;
+            width: 300rpx;
+            height: 100rpx;
+
+            .label-text {
+              width: 100%;
+              height: 50rpx;
+            }
+
+            image {
+              width: 50rpx;
+              height: 50rpx;
+            }
+          }
+
+          .special {
+            width: 100%;
+            flex-wrap: wrap;
+            height: 100%;
+            @include flex;
+          }
+        }
+      }
+    }
+  }
+
+  .loginout {
+    width: 100%;
+    height: 74rpx;
+    @include flex;
+    justify-content: center;
+    position: relative;
+    top: vww(20);
+
+    .loginout-main {
+      width: 84%;
+    }
+  }
+
+  // 琛ㄥ崟
+  .personal-information-form {
+    margin-top: vww(200);
+
+    .push-information-button {
+      display: flex;
+      margin: vww(20) auto 0;
+      width: 80%;
+
+      .u-button {
+        &:nth-of-type(2) {
+          margin-left: vww(10);
+        }
+      }
+    }
+  }
+
+  // 棰勮鍥剧墖
+  .previewImage-container {}
+
+  // 淇敼寮瑰嚭妗�
+  .editDriverPopup-container {
+    .u-popup {
+      .u-transition {
+        height: 80%;
+
+        .u-popup__content {
+          overflow: scroll !important;
+
+          .editDriverPopup-container-box {
+            width: 90%;
+            margin: 0 auto;
+          }
+
+          //closeIcon
+          .u-popup__content__close--top-right {
+            top: vww(20) !important;
+
+            .u-icon {
+              .u-icon__icon {
+                font-size: vww(20) !important;
+              }
+            }
+          }
+        }
+      }
+    }
+  }
 }
 </style>

--
Gitblit v1.9.1