From 0bd15917637362c104eb157d5163f65bf9503780 Mon Sep 17 00:00:00 2001
From: wk
Date: 星期六, 14 九月 2024 16:53:14 +0800
Subject: [PATCH] feat:通行证

---
 pages/customer-page/customer-my/customer-my.vue |  445 ++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 401 insertions(+), 44 deletions(-)

diff --git a/pages/customer-page/customer-my/customer-my.vue b/pages/customer-page/customer-my/customer-my.vue
index 228e11d..7fba015 100644
--- a/pages/customer-page/customer-my/customer-my.vue
+++ b/pages/customer-page/customer-my/customer-my.vue
@@ -4,10 +4,65 @@
 			<view class="navgation">鎴戠殑</view>
 		</view>
 		<view class="personal-information">
-			<view class="personal-information-block">
+			<view class="personal-information-block" v-if="userInfo.isBuyFlag=='1'?true:false">
 				<view class="block-main">
 					<view class="huodai">
-						<combined-title title="鎴戠殑璐т唬"
+						<combined-title title="鎴戠殑璐拱璇�"
+							@rightText="addGouMai">
+							<template v-slot:rightText>
+								<text>娣诲姞</text>
+							</template>
+						</combined-title>
+						<view class="chage">
+							<u-tag text="寰呯敓鏁�"
+								:type="radio==0?'primary':'info'"
+								plain
+								size="mini"
+								class="tags"
+								@click="checkRadio(0)"></u-tag>
+							<u-tag text="鐢熸晥"
+								:type="radio==1?'primary':'info'"
+								plain
+								size="mini"
+								class="tags"
+								@click="checkRadio(1)"></u-tag>
+							<u-tag text="杩囨湡"
+								:type="radio==2?'primary':'info'"
+								plain
+								size="mini"
+								class="tags"
+								@click="checkRadio(2)"></u-tag>
+							</view>
+						<view class="huodai-list">
+							<view class="buylist">
+								<view v-for="(item, index) in BuyCardData" :key="index" class="buylists">
+									<view >{{item.productName}}</view>
+									<view >{{item.buyTotal}}/{{item.surplus}}</view>
+									<view >{{item.endDate}}</view>
+									<view >{{item.status==0?'寰呯敓鏁�':item.status==1?'鐢熸晥':'搴熷純'}}</view>
+								</view>
+							</view>
+							<!-- <u-swipe-action>
+								<u-cell-group :border="false">
+									<u-swipe-action-item :options="options1"
+										v-for="(item, index) in BuyCardData"
+										:key="item.userId"
+										:name="item.productName">
+										<u-cell :title="item.productName"
+											:value="
+											>
+										</u-cell>
+									</u-swipe-action-item>
+								</u-cell-group>
+							</u-swipe-action> -->
+						</view>
+					</view>
+				</view>
+			</view>
+			<!-- <view class="personal-information-block">
+				<view class="block-main">
+					<view class="huodai">
+						<combined-title title="鎴戠殑鎵胯繍鍟�"
 							@rightText="addHuoDai">
 							<template v-slot:rightText>
 								<text>娣诲姞</text>
@@ -35,7 +90,140 @@
 						</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">
+							<view class="line-label">
+								<image src="https://wrzs.czjlchem.com:9090/appimg/image/banner/phonenum.png"
+									mode="widthFix"></image>
+								<view class="label-text">鎵嬫満鍙�</view>
+							</view>
+							<view class="information-value">
+								{{ userInfo.phone || '' }}
+							</view>
+						</view>
+						<view class="information-line">
+							<view class="line-label">
+								<image src="https://wrzs.czjlchem.com:9090/appimg/image/banner/carnum.png"
+									mode="widthFix"></image>
+								<view class="label-text">濮撳悕</view>
+							</view>
+							<view class="information-value">
+								{{ userInfo.name || '' }}
+							</view>
+						</view>
+						<view class="information-line">
+							<view class="line-label">
+								<image src="https://wrzs.czjlchem.com:9090/appimg/image/banner/carnum.png"
+									mode="widthFix"></image>
+								<view class="label-text">瑙掕壊</view>
+							</view>
+							<view class="information-value">
+								{{  '瀹㈡埛' }}
+							</view>
+						</view>
+						<!-- <view class="information-line"
+							@click="">
+							<view class="line-label">
+								<image src="https://wrzs.czjlchem.com:9090/appimg/image/banner/personalicon.png"
+									mode="widthFix"></image>
+								<view class="label-text">韬唤璇佸彿</view>
+							</view>
+							<view class="information-value">
+								{{ idCard || '' }}
+							</view>
+						</view> -->
+					
+						<!-- <view class="information-line">
+							<view class="line-label">
+								<image src="https://wrzs.czjlchem.com:9090/appimg/image/banner/weighnum.png"
+									mode="widthFix"></image>
+								<view class="label-text">浣撻噸</view>
+							</view>
+							<view class="information-value">
+								{{ userInfo.weight || '' }}
+							</view>
+						</view> -->
+							<!-- 鐢变簬鏄嚜瀹氫箟icon  闈炶璁″浘icon 鎵�浠ヨ鍔犱笂杩欎釜style="margin-left: 1.5%;"
+							  icon 涓嬭浇鏍煎紡涓�18x18-->
+						<!-- <view class="information-line"
+							@click="modifyPrint">
+						
+							<view class="line-label"
+								style="margin-left: 1.5%;">
+								<image src="https://wrzs.czjlchem.com:9090/appimg/image/banner/printer.png"
+									mode="widthFix"
+									style="width: 18px;"></image>
+								<view class="label-text">纾呭崟鏍峰紡</view>
+							</view>
+							<view class="information-value">
+								<view class="">
+									{{ currentSelectedPrintStyle===1?'涓�椤典袱鑱�':'涓�椤靛洓鑱�'}}
+								</view>
+								<u-icon name="arrow-right"
+									size="36"></u-icon>
+							</view>
+						</view> -->
+						<!-- <view class="information-line"
+							@click="addressManageHandle">
+							<view class="line-label"
+								style="margin-left: 1.5%;">
+								<image src="https://wrzs.czjlchem.com:9090/appimg/image/banner/address.png"
+									mode="widthFix"
+									style="width: 18px;"></image>
+								<view class="label-text"
+									style="width:220rpx ;">閫佽揣瀹㈡埛绠$悊</view>
+							</view>
+							<view class="">
+								<u-icon name="arrow-right"
+									size="36"></u-icon>
+							</view>
+						</view> -->
+						<!-- <view class="information-line"
+							@click="scoreDetail">
+							<view class="line-label"
+								style="margin-left: 1.5%;">
+								<image src="https://wrzs.czjlchem.com:9090/appimg/image/banner/score.png"
+									mode="widthFix"
+									style="width: 36rpx;position: relative;left: 8rpx;"></image>
+								<view class="label-text">鎴戠殑绉垎</view>
+							</view>
+							<view class="information-value">
+								<view class="">
+									{{ userInfo.integral || '' }}
+								</view>
+								<view class="">
+									<u-icon name="arrow-right"
+										size="36"></u-icon>
+								</view>
+							</view>
+						</view> -->
+						<!-- <view class="information-line last"
+							@click="scoreCert">
+							<view class="line-label"
+								style="margin-left: 1.5%;">
+								<image src="https://wrzs.czjlchem.com:9090/appimg/image/banner/score.png"
+									mode="widthFix"
+									style="width: 36rpx;position: relative;left: 8rpx;"></image>
+								<view class="label-text">鍓ф瘨鍖栧鍝侀亾璺繍杈撻�氳璇�</view>
+							</view>
+							<view class="information-value">
+								<view class="">
+									{{ '' }}
+								</view>
+								<view class="">
+									<u-icon name="arrow-right"
+										size="36"></u-icon>
+								</view>
+							</view>
+						</view> -->
+					</view>
+				</view>
 			</view>
+		</view>
 			<view class="personal-information-block">
 				<view class="block-main">
 					<view class="fleet-container">
@@ -47,11 +235,12 @@
 						</combined-title>
 						<view class="fleet-list">
 							<u-swipe-action>
-								<u-cell-group :border="false">
+								<u-cell-group :border="false" style="z-index: 0;">
 									<u-swipe-action-item :options="options1"
 										v-for="(item, index) in fleetData"
 										:key="item.id"
 										:name="item.id"
+										style="z-index: 0;"
 										@click="deleteFleetClick">
 										<u-cell :title="item.name"
 											:value="item.userSijisum + '杈�'"
@@ -74,16 +263,19 @@
 			<view class="statistics"><u-button text="鐢ㄦ埛绠$悊"
 					type="primary"
 					@click="userManage"
-					v-if="roleType == 1 && userEntity.isHostUser === '0'"></u-button></view>
-			<!-- <view class="logout"><u-button text="淇敼瀵嗙爜"
+					v-if="roleType == 1 && userInfo.isHostUser === 0"></u-button></view>
+			<view class="logout"><u-button text="淇敼瀵嗙爜"
 					type="primary"
 					@click="modifyPwd"></u-button></view>
-			<view class="logout"><u-button text="閲嶇疆瀵嗙爜"
+			<!-- <view class="logout"><u-button text="閲嶇疆瀵嗙爜"
 					type="primary"
 					@click="initPwd"></u-button></view> -->
 			<view class="logout"><u-button text="閫�鍑虹櫥褰�"
 					type="primary"
 					@click="logout()"></u-button></view>
+			<view class="logout"><u-button text="鑱旂郴鎴戜滑"
+					type="primary"
+					@click="contactUs()"></u-button></view>
 		</view>
 		<u-toast ref="uToast"></u-toast>
 		<!-- 鏂板缓杞﹂槦寮瑰嚭妗� -->
@@ -116,8 +308,7 @@
 						@click="addNewGroupClick"></u-button></view>
 			</u-popup>
 		</view>
-
-		<!-- 鍒犻櫎璐т唬妯℃�佹 -->
+		<!-- 鍒犻櫎鎵胯繍鍟嗘ā鎬佹 -->
 		<view class="deleteHuoDaiModal">
 			<u-modal :show="deleteHuoDaiShow"
 				:title="deleteHuoDaiTitle"
@@ -150,34 +341,11 @@
 				@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 class="modifyPwdModal">
-			<u-modal :show="modifyPwdShow"
-				title="淇敼瀵嗙爜"
-				showCancelButton
-				@confirm="modifyPwdConfirm"
-				@cancel="modifyPwdCancel">
-				<view class="modifyPwd">
-					<u-input v-model="passwordModified"
-						placeholder="璇疯緭鍏ヤ慨鏀瑰悗鐨勫瘑鐮�"
-						border="surround"
-						type="password"></u-input>
-				</view>
-			</u-modal>
-		</view> -->
 	</view>
 </template>
 
 <script>
+	import { BaseUrl } from '@/api/publicInterface.js'
 	import combinedTitle from '@/components/combined-title/combined-title.vue';
 	import { customerId, redirectLogin } from '@/utils/status';
 	export default {
@@ -186,7 +354,10 @@
 		},
 		data() {
 			return {
+				radio:'1',
+				userInfo: {},
 				huoDaiData: [],
+				BuyCardData:[],
 				fleetData: [],
 				// 鏂板缓杞﹂槦
 				addGroupForm: {
@@ -197,8 +368,8 @@
 				options1: [{
 					text: '鍒犻櫎'
 				}],
-				// 鍒犻櫎璐т唬妯℃�佹
-				deleteHuoDaiId: null, // 鍒犻櫎璐т唬id
+				// 鍒犻櫎鎵胯繍鍟嗘ā鎬佹
+				deleteHuoDaiId: null, // 鍒犻櫎鎵胯繍鍟唅d
 				deleteHuoDaiShow: false,
 				deleteHuoDaiTitle: '',
 				deleteHuoDaiContent: '',
@@ -215,20 +386,85 @@
 				userEntity: {},
 				initPwdShow: false,
 				modifyPwdShow: false,
-				passwordModified: ''
+				passwordModified: '',
+				phoneList:[]
 			};
 		},
 		computed: {
 			roleType() {
 				return uni.getStorageSync('roleType');
+			},
+			userInfo(){
+					return uni.getStorageSync('userInfo');
 			}
 		},
 		methods: {
+			checkRadio(e){
+				this.radio=e
+				this.getBuyCardList()
+			},
 			init() {
 				this.getAllHuoDaiByCustomerId();
 				this.getFleet();
+				this.getUserEntity();
+				uni.request({
+					url:  `${BaseUrl}/admin/dict/page`,
+					method: 'GET',
+					data: {
+						dictType:'Setings'
+					},
+					header: {
+						Authorization: 'Bearer' + ' ' + uni.getStorageSync('token'),
+						clientToc: 'Y',
+						'CLIENT_TOC': 'Y',
+					},
+					success: res => {
+						let dictId=res.data.data?.records[0].id
+						uni.request({
+							url:  `${BaseUrl}/admin/dict/item/page`,
+							method: 'GET',
+							data: {
+								dictId:dictId
+							},
+							header: {
+								Authorization: 'Bearer' + ' ' + uni.getStorageSync('token'),
+								clientToc: 'Y',
+								'CLIENT_TOC': 'Y',
+							},
+							success: res => {
+								res.data.data.records.forEach(item=>{
+									if(item.description.includes('鑱旂郴')){
+										this.phoneList=item.value.split(',')
+									}
+								})
+							},
+							fail: err => {
+							}
+						})
+					},
+					fail: err => {
+					}
+					})
 			},
-			// 鑾峰彇璐т唬鍒楄〃
+			getUserEntity() {
+				uni.showLoading({
+					title: '鍔犺浇涓�...'
+				});
+				this.$reqGet('getUserEntity').then(res => {
+					this.userInfo = res.data;
+					this.getBuyCardList();
+				})
+			},
+			getBuyCardList() {
+				uni.showLoading({
+					title: '鍔犺浇涓�...'
+				});
+				this.$reqGet('getBuyCardList',{customerId: this.userInfo.customerid,status:this.radio}).then(res => {
+					uni.hideLoading();
+					this.BuyCardData = res.data;
+				});
+			},
+			// 鑾峰彇鎵胯繍鍟嗗垪琛�
 			getAllHuoDaiByCustomerId() {
 				uni.showLoading({
 					title: '鍔犺浇涓�...'
@@ -248,10 +484,16 @@
 					this.fleetData = res.data;
 				});
 			},
-			// 娣诲姞璐т唬
+			// 娣诲姞鎵胯繍鍟�
 			addHuoDai() {
 				uni.navigateTo({
-					url: '/pages/customer-page/addTo-freightForwarder-driver/addTo-freightForwarder-driver?role=1' // 1浠h〃鐨勬槸璐т唬
+					url: '/pages/customer-page/addTo-freightForwarder-driver/addTo-freightForwarder-driver?role=1' // 1浠h〃鐨勬槸鎵胯繍鍟�
+				});
+			},
+			// 娣诲姞璐拱璇�
+			addGouMai(){
+				uni.navigateTo({
+					url: '/subPages/addTo-freightForwarder-purchasePermit/addTo-freightForwarder-purchasePermit'
 				});
 			},
 			// 娣诲姞杞﹂槦
@@ -292,14 +534,14 @@
 					});
 				this.updateGroupShow = false;
 			},
-			// 鍒犻櫎璐т唬
+			// 鍒犻櫎鎵胯繍鍟�
 			deleteHuoDaiClick(args) {
-				console.log(args, '璐т唬id');
+				console.log(args, '鎵胯繍鍟唅d');
 				this.deleteHuoDaiId = args.name;
 				this.deleteHuoDaiShow = true;
 				this.huoDaiData.forEach(item => {
 					if (item.userId == this.deleteHuoDaiId) {
-						this.deleteHuoDaiContent = '纭鍒犻櫎璐т唬' + item.name + '鍚楋紵';
+						this.deleteHuoDaiContent = '纭鍒犻櫎鎵胯繍鍟�' + item.name + '鍚楋紵';
 					}
 				});
 			},
@@ -363,7 +605,7 @@
 						this.getFleet();
 					});
 			},
-			// 璐т唬璇︽儏
+			// 鎵胯繍鍟嗚鎯�
 			toFreightForwarderDetails(userId) {
 				uni.navigateTo({
 					url: `/pages/customer-page/freight-forwarder-details/freight-forwarder-details?userId=${userId}`
@@ -378,6 +620,19 @@
 			logout() {
 				this.logoutShow = true;
 			},
+			contactUs(){
+				uni.showActionSheet({
+					itemList: this.phoneList,
+					success: (res) => {
+					uni.makePhoneCall({
+						phoneNumber:this.phoneList[res.tapIndex].split(":")[1]
+					})
+				},
+				fail: (err) => {
+					console.log('寮圭獥鍙栨秷');
+				}
+				});
+			},
 			logoutConfirm() {
 				redirectLogin();
 				this.$store.commit('changeisLogin', false)
@@ -385,6 +640,13 @@
 			},
 			logoutCancel() {
 				this.logoutShow = false;
+			},
+			modifyPwd() {
+				this.$store.commit('changeisLogin', false)
+				this.$store.dispatch('websocketOnClose')
+				uni.reLaunch({
+					url: `/pages/login/resetPassword/resetPassword?phone=${this.userInfo.phone}&idCard=${this.userInfo.idCard}`
+				})
 			},
 			// 璺宠浆鐢ㄦ埛绠$悊椤甸潰
 			userManage() {
@@ -403,7 +665,19 @@
 		justify-content: space-between;
 		align-items: center;
 	}
-
+	.buylist{
+		width: 100%;
+		height: 80%;
+	}
+	.buylists {
+		position: relative;
+		overflow: hidden;
+		@include flex;
+		align-items: center;
+		font-size: 15px;
+		height: 80rpx;
+		border-bottom: 1rpx solid rgb(220, 223, 230);
+	}
 	.utils-button {
 		margin-top: vww(35);
 
@@ -426,6 +700,9 @@
 	::v-deep.customer-my {
 		width: 100%;
 		margin: vww(90) auto;
+		:v-deep .u-cell-group__wrapper{
+			z-index: 0!important;
+		}
 
 		.driver-banner {
 			width: 100%;
@@ -457,7 +734,7 @@
 
 			&-block {
 				width: 690rpx;
-				min-height: 478rpx;
+				min-height: 300rpx;
 				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;
@@ -472,7 +749,77 @@
 				}
 			}
 		}
+		.information-block {
+			width: 100%;
 
+			.personal-information {
+				width: 100%;
+				display: flex;
+				justify-content: center;
+				position: relative;
+				top: vww(-10);
+
+				&-block {
+					width: 690rpx;
+					height: 350rpx;
+					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: 50%;
+							height: 90rpx;
+							@include flex;
+
+							image {
+								width: 50rpx;
+								height: 50rpx;
+							}
+
+							.label-text {
+								flex: 0.8;
+								font-size: 30rpx;
+								font-weight: 400;
+								color: #000000;
+								line-height: 32rpx;
+								text-align: left;
+							}
+						}
+
+						.information-value {
+							min-width: vww(125);
+							@include flex;
+							font-size: 30rpx;
+							font-weight: 400;
+							color: #000000;
+							line-height: 85rpx;
+						}
+					}
+
+					.last {
+						border-bottom: 0;
+
+						.information-value {
+							justify-content: space-between;
+						}
+					}
+				}
+			}
+		}
 		.huodai {
 			.huodai-list {
 				.u-swipe-action {
@@ -492,6 +839,9 @@
 		.fleet-container {
 			.fleet-list {
 				.u-swipe-action {
+					 .u-cell-group__wrapper {
+						z-index: 0;
+					}
 					.u-swipe-action-item {
 						.u-swipe-action-item__right {
 							.u-swipe-action-item__right__button {
@@ -541,4 +891,11 @@
 			border: 1rpx solid rgb(220, 223, 230);
 		}
 	}
+	.chage{
+		width: 280rpx;
+		height: 50rpx;
+		display: flex;
+		justify-content: space-between;
+		align-items: center;
+	}
 </style>
\ No newline at end of file

--
Gitblit v1.9.1