zaijin 3 år sedan
förälder
incheckning
0e51643338

+ 1 - 1
common/http.api.js

@@ -31,7 +31,7 @@ const install = (Vue, vm) => {
 	
 	let getOrderList = (params = {}) => vm.$u.get(apiurl.getOrderListUrl,params);
 	let getOrderinfo = (params = {}) => vm.$u.get(apiurl.getOrderinfoUrl+params.id);
-	let getOrderDetail = (params = {}) => vm.$u.get(apiurl.getOrderDetailUrl+params.id);
+	let getOrderDetail = (params = {}) => vm.$u.get(apiurl.getOrderDetailUrl+params.id,{showLoading: false});
 	
 	let getMessageList = (params = {}) => vm.$u.get(apiurl.getMessageListUrl,params);
 	let messageRead = (params ={}) => vm.$u.put(apiurl.messageReadUrl+params.newId);

+ 4 - 0
main.js

@@ -45,3 +45,7 @@ import httpApi from '@/common/http.api.js';
 Vue.use(httpApi, app);
 
 app.$mount()
+// //导入
+// import cookie from "js-cookie"
+// //将cookie转换为 vue 原型
+// Vue.prototype.Cook = cookie

+ 5 - 0
package-lock.json

@@ -2,6 +2,11 @@
   "requires": true,
   "lockfileVersion": 1,
   "dependencies": {
+    "js-cookie": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.0.tgz",
+      "integrity": "sha512-oUbbplKuH07/XX2YD2+Q+GMiPpnVXaRz8npE7suhBH9QEkJe2W7mQ6rwuMXHue3fpfcftQwzgyvGzIHyfCSngQ=="
+    },
     "vue-jsonp": {
       "version": "2.0.0",
       "resolved": "https://registry.npm.taobao.org/vue-jsonp/download/vue-jsonp-2.0.0.tgz",

+ 159 - 177
pages.json

@@ -6,14 +6,14 @@
 		{
 			"path": "pages/index/index",
 			"style": {
-				"navigationStyle":"custom",// 隐藏系统导航栏
+				"navigationStyle": "custom", // 隐藏系统导航栏
 				"navigationBarTitleText": "城市智慧停车"
 			}
 		},
 		{
 			"path": "pages/center/index",
 			"style": {
-				"navigationStyle":"custom",// 隐藏系统导航栏
+				"navigationStyle": "custom", // 隐藏系统导航栏
 				"navigationBarTextStyle": "white",
 				"navigationBarTitleText": "城市智慧停车"
 			}
@@ -22,7 +22,7 @@
 			"path": "pages/center/phoneLogin/phoneLogin",
 			"style": {
 				"navigationBarTitleText": "手机号登录",
-				"navigationStyle":"custom"
+				"navigationStyle": "custom"
 			}
 		},
 		{
@@ -61,17 +61,17 @@
 		{
 			"path": "pages/parkingLists/parkingLists",
 			"style": {
-				"navigationStyle":"custom",
+				"navigationStyle": "custom",
 				"navigationBarTitleText": "停车场"
 			}
 		},
 		{
 			"path": "pages/myCars/myCars",
 			"style": {
-				"navigationStyle":"custom",// 隐藏系统导航栏
+				"navigationStyle": "custom", // 隐藏系统导航栏
 				"navigationBarTitleText": "我的车辆"
 			}
-		},		
+		},
 		{
 			"path": "pages/payPage/payPage",
 			"style": {
@@ -82,213 +82,195 @@
 		{
 			"path": "pages/message/message",
 			"style": {
-				"navigationStyle":"custom",// 隐藏系统导航栏
-				"navigationBarTitleText":"消息中心"
+				"navigationStyle": "custom", // 隐藏系统导航栏
+				"navigationBarTitleText": "消息中心"
 			}
 		},
 		{
 			"path": "pages/message/messageInfo",
 			"style": {
-				"navigationStyle":"custom",// 隐藏系统导航栏
-				"navigationBarTitleText":"消息中心"
+				"navigationStyle": "custom", // 隐藏系统导航栏
+				"navigationBarTitleText": "消息中心"
 			}
 		},
 		{
 			"path": "pages/payLists/payLists",
 			"style": {
-				"navigationStyle":"custom",// 隐藏系统导航栏
-				"navigationBarTitleText":"停车缴费"
+				"navigationStyle": "custom", // 隐藏系统导航栏
+				"navigationBarTitleText": "停车缴费"
 			}
 		},
 		{
-            "path" : "pages/parkingInformation/parkingInformation",
-            "style" :                                                                                    
-            {
-                "navigationBarTitleText": "停车场信息",
-                "enablePullDownRefresh": false,
-                "navigationBarBackgroundColor": "#ffffff",
-                "navigationBarTextStyle": "black"
-            }
-            
-        }
-        ,{
-            "path" : "pages/chargeStandard/chargeStandard",
-            "style" :                                                                                    
-            {
-                "navigationBarTitleText": "收费标准",
-                "enablePullDownRefresh": false,
+			"path": "pages/parkingInformation/parkingInformation",
+			"style": {
+				"navigationBarTitleText": "停车场信息",
+				"enablePullDownRefresh": false,
+				"navigationBarBackgroundColor": "#ffffff",
+				"navigationBarTextStyle": "black"
+			}
+
+		}, {
+			"path": "pages/chargeStandard/chargeStandard",
+			"style": {
+				"navigationBarTitleText": "收费标准",
+				"enablePullDownRefresh": false,
+				"navigationBarBackgroundColor": "#008CFF",
+				"navigationBarTextStyle": "white"
+			}
+
+		}, {
+			"path": "pages/handleMonthly/handleMonthly",
+			"style": {
+				"navigationBarTitleText": "办理包月",
+				"enablePullDownRefresh": false,
 				"navigationBarBackgroundColor": "#008CFF",
 				"navigationBarTextStyle": "white"
-            }
-            
-        }
-        ,{
-            "path" : "pages/handleMonthly/handleMonthly",
-            "style" :                                                                                    
-            {
-                "navigationBarTitleText": "办理包月",
-                "enablePullDownRefresh": false,
-                "navigationBarBackgroundColor": "#008CFF",
-                "navigationBarTextStyle": "white"
-            }
-            
-        }
-        ,{
-            "path" : "pages/center/monthly/monthly1",
-            "style" :                                                                                    
-            {
-                "navigationBarTitleText": "我的包月",
-                "navigationBarBackgroundColor": "#008CFF",
-                "navigationBarTextStyle": "white",
+			}
+
+		}, {
+			"path": "pages/center/monthly/monthly1",
+			"style": {
+				"navigationBarTitleText": "我的包月",
+				"navigationBarBackgroundColor": "#008CFF",
+				"navigationBarTextStyle": "white",
 				"enablePullDownRefresh": false
-            }
-        },
+			}
+		},
 		{
-		    "path" : "pages/center/monthly/monthly",
-		    "style" :                                                                                    
-		    {
-		        "navigationBarTitleText": "我的包月",
-		        "navigationBarBackgroundColor": "#008CFF",
-		        "navigationBarTextStyle": "white",
+			"path": "pages/center/monthly/monthly",
+			"style": {
+				"navigationBarTitleText": "我的包月",
+				"navigationBarBackgroundColor": "#008CFF",
+				"navigationBarTextStyle": "white",
 				"enablePullDownRefresh": false
-		    }
+			}
 		},
 		{
-		    "path" : "pages/payLists/pay",
-		    "style" :                                                                                    
-		    {
-		        "navigationStyle":"custom",// 隐藏系统导航栏
-		        "navigationBarTitleText":"支付"
-		    }
-		    
+			"path": "pages/payLists/pay",
+			"style": {
+				"navigationStyle": "custom", // 隐藏系统导航栏
+				"navigationBarTitleText": "支付"
+			}
+
 		},
 		{
-		    "path" : "pages/handleMonthly/monthPay",
-		    "style" :                                                                                    
-		    {
-		        "navigationStyle":"custom",// 隐藏系统导航栏
-		        "navigationBarTitleText":"包月支付"
-		    }
-		    
+			"path": "pages/paymentMethod/jumpMiddle",
+			"style": {
+				"navigationStyle": "custom", // 隐藏系统导航栏
+				"navigationBarTitleText": "跳转"
+			}
+
 		},
 		{
-		    "path" : "pages/searchparking/searchparking",
-		    "style" :                                                                                    
-		    {
-		        "navigationStyle":"custom",// 隐藏系统导航栏
-		        "navigationBarTitleText":"停车查询"
-		    }
-		    
-		}
-        ,{
-            "path" : "pages/favourableActivity/favourableActivity",
-            "style" :                                                                                    
-            {
-                "navigationBarTitleText": "一分钱停车",
-                "enablePullDownRefresh": false,
-                "navigationBarBackgroundColor": "#008CFF",
-                "navigationBarTextStyle": "white"
-            }
-            
-        }
-        ,{
-            "path" : "pages/parkingLock/parkingLock",
-            "style" :                                                                                    
-            {
-                "navigationBarTitleText": "车位锁",
-                "enablePullDownRefresh": false,
+			"path": "pages/handleMonthly/monthPay",
+			"style": {
+				"navigationStyle": "custom", // 隐藏系统导航栏
+				"navigationBarTitleText": "包月支付"
+			}
+
+		},
+		{
+			"path": "pages/searchparking/searchparking",
+			"style": {
+				"navigationStyle": "custom", // 隐藏系统导航栏
+				"navigationBarTitleText": "停车查询"
+			}
+
+		}, {
+			"path": "pages/favourableActivity/favourableActivity",
+			"style": {
+				"navigationBarTitleText": "一分钱停车",
+				"enablePullDownRefresh": false,
+				"navigationBarBackgroundColor": "#008CFF",
+				"navigationBarTextStyle": "white"
+			}
+
+		}, {
+			"path": "pages/parkingLock/parkingLock",
+			"style": {
+				"navigationBarTitleText": "车位锁",
+				"enablePullDownRefresh": false,
 				"navigationBarBackgroundColor": "#008CFF",
 				"navigationBarTextStyle": "white"
-            }
-            
-        }
-        ,{
-            "path" : "pages/parkingLists/map_web_view/map_web_view",
-            "style" :                                                                                    
-            {
-                "navigationStyle": "custom",
+			}
+
+		}, {
+			"path": "pages/parkingLists/map_web_view/map_web_view",
+			"style": {
+				"navigationStyle": "custom",
 				"navigationBarTitleText": "导航",
-                "enablePullDownRefresh": false
-            }
-            
-        }
-        ,{
-            "path" : "pages/bannerDetails/bannerDetails",
-            "style" :                                                                                    
-            {
-                "navigationBarTitleText": "详情页",
+				"enablePullDownRefresh": false
+			}
+
+		}, {
+			"path": "pages/bannerDetails/bannerDetails",
+			"style": {
+				"navigationBarTitleText": "详情页",
 				"enablePullDownRefresh": false,
 				"navigationBarBackgroundColor": "#008CFF",
 				"navigationBarTextStyle": "white"
-            }
-            
-        }
-        ,{
-            "path" : "pages/applyRefund/applyRefund",
-            "style" :                                                                                    
-            {
-                "navigationBarTitleText": "申请退款",
-                "enablePullDownRefresh": false,
-                "navigationBarBackgroundColor": "#008CFF",
-                "navigationBarTextStyle": "white"
-            }
-            
-        }
-        ,{
-            "path" : "pages/applyRefundDetails/applyRefundDetails",
-            "style" :                                                                                    
-            {
-                "navigationBarTitleText": "申请退款",
-                "enablePullDownRefresh": false,
-                "navigationBarBackgroundColor": "#008CFF",
-                "navigationBarTextStyle": "white"
-            }
-            
-        },{
-            "path" : "pages/applyRefundDetails/applyRefundAchieveDetails",
-            "style" :                                                                                    
-            {
-                "navigationBarTitleText": "订单详情"
-            }
-            
-        }
-        ,{
-            "path" : "pages/privacyPolicy/privacyPolicy",
-            "style" :                                                                                    
-            {
-                "navigationBarTitleText": "隐私政策",
-                "enablePullDownRefresh": false
-            }
-            
-        }
-    ],
+			}
+
+		}, {
+			"path": "pages/applyRefund/applyRefund",
+			"style": {
+				"navigationBarTitleText": "申请退款",
+				"enablePullDownRefresh": false,
+				"navigationBarBackgroundColor": "#008CFF",
+				"navigationBarTextStyle": "white"
+			}
+
+		}, {
+			"path": "pages/applyRefundDetails/applyRefundDetails",
+			"style": {
+				"navigationBarTitleText": "申请退款",
+				"enablePullDownRefresh": false,
+				"navigationBarBackgroundColor": "#008CFF",
+				"navigationBarTextStyle": "white"
+			}
+
+		}, {
+			"path": "pages/applyRefundDetails/applyRefundAchieveDetails",
+			"style": {
+				"navigationBarTitleText": "订单详情"
+			}
+
+		}, {
+			"path": "pages/privacyPolicy/privacyPolicy",
+			"style": {
+				"navigationBarTitleText": "隐私政策",
+				"enablePullDownRefresh": false
+			}
+
+		}
+	],
 	"globalStyle": {
 		"navigationBarTextStyle": "black",
 		"navigationBarTitleText": "uView",
 		"navigationBarBackgroundColor": "#F8F8F8",
 		"backgroundColor": "#F8F8F8",
-		"backgroundColorTop":"#FFFFFF"
+		"backgroundColorTop": "#FFFFFF"
 	},
 	"tabBar": {
-	    "color": "#909399",
-	    "selectedColor": "#303133",
-	    "borderStyle": "black",
-	    "backgroundColor": "#ffffff",
-	    "list": [{
-	        "pagePath": "pages/index/index",
-	        "iconPath": "static/index.png",
-	        "selectedIconPath": "static/index-selected.png",
-	        "text": "首页"
-	    }, {
-	        "pagePath": "pages/parkingLists/parkingLists",
-	        "iconPath": "static/car_h.png",
-	        "selectedIconPath": "static/car.png",
-	        "text": "找车位"
-	    }, {
-	        "pagePath": "pages/center/index",
-	        "iconPath": "static/center.png",
-	        "selectedIconPath": "static/center-selected.png",
-	        "text": "我"
-	    }]
+		"color": "#909399",
+		"selectedColor": "#303133",
+		"borderStyle": "black",
+		"backgroundColor": "#ffffff",
+		"list": [{
+			"pagePath": "pages/index/index",
+			"iconPath": "static/index.png",
+			"selectedIconPath": "static/index-selected.png",
+			"text": "首页"
+		}, {
+			"pagePath": "pages/parkingLists/parkingLists",
+			"iconPath": "static/car_h.png",
+			"selectedIconPath": "static/car.png",
+			"text": "找车位"
+		}, {
+			"pagePath": "pages/center/index",
+			"iconPath": "static/center.png",
+			"selectedIconPath": "static/center-selected.png",
+			"text": "我"
+		}]
 	}
 }

+ 1 - 1
pages/bannerDetails/bannerDetails.vue

@@ -49,5 +49,5 @@
 </script>
 
 <style>
-
+page{padding: 24rpx;}
 </style>

+ 1 - 1
pages/center/index.vue

@@ -126,7 +126,7 @@ export default {
       // 用户信息
       userInfo: [],
       code: null,
-      phoneNo: '16608538666',
+      phoneNo: '18885351206',
       logoutPop: false,
       messageNum: 0
     }

+ 2 - 2
pages/center/invoice/invoice.vue

@@ -100,11 +100,11 @@ export default {
 			// 完成:   orderStatu = 4-完成
 			this.$u.api.getOrderList(param)
 			.then(res=>{
-				for(let item of res.data.rows){
+				for(let item of res.data.pageInfo.rows){
 					this.orderList[orderType.index].push(item);
 				}
 				console.log('this.list[orderType.index]',this.list[orderType.index]);
-				this.list[this.current].total = res.data.total;
+				this.list[this.current].total = res.data.pageInfo.total;
 				this.list[orderType.index].pageNum++;
 				if(this.orderList[this.current].length>=this.list[this.current].total){
 					this.loadStatus.splice(this.list[orderType.index].index,1,"nomore");

+ 4 - 2
pages/center/order/order.vue

@@ -95,6 +95,8 @@
                     实缴金额:
                     <span class="pay-amount">{{ orderItem.actualAmount }}</span>
                   </view>
+					<view class="order-center-item">泊位号:{{ orderItem.spaceName }}</view>
+					<view class="order-center-item" v-if="orderItem.deviceType !=1">车位锁设备号:{{ orderItem.deviceNo }}</view>
                 </view>
                 <view class="order-bottom">
                   <u-cell-item title="收费标准" @click.native.stop="jumpChargeStandard(orderItem)"></u-cell-item>
@@ -173,10 +175,10 @@ export default {
       // 完成:   orderStatu = 4-完成
       this.$u.api.getOrderList(param)
         .then(res => {
-          for (const item of res.data.rows) {
+          for (const item of res.data.pageInfo.rows) {
             this.orderList[orderType.index].push(item)
           }
-          this.list[this.current].total = res.data.total
+          this.list[this.current].total = res.data.pageInfo.total
           this.list[orderType.index].pageNum++
           if (this.orderList[this.current].length >= this.list[this.current].total) {
             this.loadStatus.splice(this.list[orderType.index].index, 1, 'nomore')

+ 1 - 1
pages/handleMonthly/handleMonthly.vue

@@ -261,7 +261,6 @@
 					jumpUrl: this.jumpUrl
 				}).then(res => {
 					if(res.code === 200){
-						localStorage.setItem('jumpUrl', this.jumpUrl)
 						window.location.href = res.data.url
 					} else {
 						this.$refs.uToast.show({
@@ -342,6 +341,7 @@
 							// } else {
 							// 	location.href = res.data.qrCodeUrl
 							// }
+							localStorage.setItem('jumpUrl', this.jumpUrl)
 							location.href = res.data.qrCodeUrl
 						} else {
 							this.$refs.uToast.show({

+ 24 - 0
pages/index/index.scss

@@ -156,6 +156,14 @@ page{background-color: $my-page-bg-color;}
 			border-radius: 10rpx;
 			cursor: pointer;
 		}
+		.go-pay1{
+			display: inline-block;
+			padding: 12rpx 39rpx 11rpx;
+			background: linear-gradient(90deg, #D3D3D3 0%, #F5F5F5 100%, #DCDCDC 100%);
+			color: #fff;
+			border-radius: 10rpx;
+			cursor: pointer;
+		}
 	}
 	
 }
@@ -288,4 +296,20 @@ page{background-color: $my-page-bg-color;}
 	margin: 0 auto;
 	border-radius: 16rpx;
 	margin-top: 20rpx;
+}
+
+.myorders-item{
+	position: relative;
+	margin-bottom: 8rpx;
+	padding-left: 30rpx;
+	&::before{
+		content: '';
+		width: 9rpx;
+		height: 9rpx;
+		border-radius: 50%;
+		background-color: #626262;
+		position: absolute;
+		left: 0;
+		top: 17rpx;
+	}
 }

+ 506 - 517
pages/index/index.vue

@@ -1,132 +1,91 @@
 <template>
-  <view>
+	<view>
 		<!-- ===================================== 搜索栏 ===================================== -->
-    <view class="header-bar">
-      <view class="city" @click="handleCitySelect">
-        <view class="city-name">{{ city }}</view>
-        <u-icon name="arrow-down" color="#fff" size="32"></u-icon>
-      </view>
-			<u-search
-				placeholder="搜索停车点"
-				:show-action="false"
-				@search="handleSearch"
-				v-model="keyword"
-			></u-search>
-      <!-- <u-icon class="scan" name="scan" color="#fff" size="48" @click="$refs.uToast.show({title: '建设中'})"></u-icon> -->
-    </view>
-	
+		<view class="header-bar">
+			<view class="city" @click="handleCitySelect">
+				<view class="city-name">{{ city }}</view>
+				<u-icon name="arrow-down" color="#fff" size="32"></u-icon>
+			</view>
+			<u-search placeholder="搜索停车点" :show-action="false" @search="handleSearch" v-model="keyword"></u-search>
+			<!-- <u-icon class="scan" name="scan" color="#fff" size="48" @click="$refs.uToast.show({title: '建设中'})"></u-icon> -->
+		</view>
+
 		<!-- ===================================== 轮播图 ===================================== -->
-    <u-swiper
-			:list="bannerList"
-			border-radius="0"
-			mode="none"
-			@click="swiperClick"
-		></u-swiper>
-	
+		<u-swiper :list="bannerList" border-radius="0" mode="none" @click="swiperClick"></u-swiper>
+
 		<!-- ===================================== 城市选择器 ===================================== -->
-    <u-city-select
-			v-model="cityOpen"
-			@city-change="cityChange"
-			:areaCode='["52", "5201"]'
-		></u-city-select>
-	
+		<u-city-select v-model="cityOpen" @city-change="cityChange" :areaCode='["52", "5201"]'></u-city-select>
+
 		<!-- ===================================== 滚动信息栏 ===================================== -->
-    <view
-      class="notice-bar-wrap u-flex"
-      v-if="noticeList.length >= 1"
-      @click="openPage('pages/message/message', true)"
-    >
-      <u-icon custom-prefix="custom-icon" size="50" name="xiaoxi" color="#008CFF"></u-icon>
-      <u-notice-bar
-        class="u-flex-1"
-        mode="vertical"
-        :autoplay="true"
-        :list="noticeList"
-        :volume-icon="false"
-        bg-color="#fff"
-        color="#727272"
-        :more-icon="true"
-      ></u-notice-bar>
-    </view>
-	
+		<view class="notice-bar-wrap u-flex" v-if="noticeList.length >= 1"
+			@click="openPage('pages/message/message', true)">
+			<u-icon custom-prefix="custom-icon" size="50" name="xiaoxi" color="#008CFF"></u-icon>
+			<u-notice-bar class="u-flex-1" mode="vertical" :autoplay="true" :list="noticeList" :volume-icon="false"
+				bg-color="#fff" color="#727272" :more-icon="true"></u-notice-bar>
+		</view>
+
 		<!-- ===================================== 宫格菜单 ===================================== -->
-    <u-card
-      :show-head="false"
-      :show-foot="false"
-      border-radius="16"
-      margin="20rpx 40rpx"
-      padding="30"
-    >
-      <view class="content-nav" slot="body">
-				<view
-					class="content-nav-item"
-					v-for="(grid, index) in gridList"
-					:key="'g-' + index"
-					@click="openPage(grid.url, true)"
-				>
+		<u-card :show-head="false" :show-foot="false" border-radius="16" margin="20rpx 40rpx" padding="30">
+			<view class="content-nav" slot="body">
+				<view class="content-nav-item" v-for="(grid, index) in gridList" :key="'g-' + index"
+					@click="openPage(grid.url, true)">
 					<view class="content-nav-item-icon-wrap">
-					  <u-image
-					    :src="grid.imageUrl"
-					    :width="grid.width || '95rpx'"
-					    :height="grid.height || '95rpx'"
-					    :mode="grid.mode || 'heightFix'"
-					  ></u-image>
+						<u-image :src="grid.imageUrl" :width="grid.width || '95rpx'" :height="grid.height || '95rpx'"
+							:mode="grid.mode || 'heightFix'"></u-image>
 					</view>
 					<view class="content-nav-item-icon-text">{{grid.title}}</view>
 				</view>
-      </view>
-    </u-card>
+			</view>
+		</u-card>
 
+		<u-card :show-head="false" :show-foot="false" border-radius="16" margin="20rpx 40rpx" padding="30">
+			<view slot="body" class="myorders">
+				<view class="myorders-item">当前已缴费<text style="color: #008CFF;">{{totalCount||'0'}}</text>笔,合计<text
+						style="color: #008CFF;">{{totalActualAmount||'0'}}</text>元</view>
+				<view class="myorders-item">当前欠费<text style="color: #FF482B;">{{totalPayCount||'0'}}</text>笔,合计<text
+						style="color: #FF482B;">{{totalPayAmount||'0'}}</text>元</view>
+			</view>
+		</u-card>
 		<!-- ===================================== 无停车信息 ===================================== -->
-    <view class="empty-data-box" v-if="!orderList || orderList.length < 1">
-      <u-empty text="暂无停车信息" mode="list"></u-empty>
-    </view>
-	
+		<view class="empty-data-box" v-if="!orderList || orderList.length < 1">
+			<u-empty text="暂无停车信息" mode="list"></u-empty>
+		</view>
+
 		<!-- ===================================== 停车列表 ===================================== -->
-    <template v-for="(item, index) in orderList">
-      <u-card
-        :show-foot="false"
-        border-radius="16"
-        margin="20rpx 40rpx"
-        padding="30">
-        <view class="pending-order-head" slot="head">
-          <view class="pending-order-head-left">
-            <b>P</b>
-            {{ item.roadName }}
-          </view>
-          <view class="pending-order-head-right" @click="  onRoadInfo(item)">
-            <u-icon class="arrow-down" name="arrow-down" size="32" color="#aaa"></u-icon>
-          </view>
-        </view>
-        <view class="pending-order-body" slot="body">
-          <view class="pending-order-body-nav">
-            <view
-              class="nav-item nav-manual"
-              @click="orderNavclick()"
-              :class="{ active: orderNav == 0 }"
-            >手动缴费</view>
-            <view
-              class="nav-item nav-auto"
-              @click="orderNavclick()"
-              :class="{ active: orderNav == 1 }"
-            >无感支付</view>
-          </view>
-          <view class="pending-order-body-wrap" v-show="orderNav == 0">
-            <view class="pending-order-body-left">
-              <view class="car-number">{{ item.vehicleNo }}</view>
-              <view class="item-cell">
-                <span class="pending-order-body-left-label">入场时间:</span>
-                <span>{{ item.inTime }}</span>
-              </view>
-              <view class="item-cell">
-                <span class="pending-order-body-left-label">预计出场时间:</span>
-                <span>{{item.outTime}}</span>
-              </view>
-              <view class="item-cell">
-                <span class="pending-order-body-left-label">预计金额:</span>
-                <span>{{ item.payAmount }}</span>
-              </view>
-              <!-- <view class="item-cell">
+		<template v-for="(item, index) in orderList">
+			<u-card :show-foot="false" border-radius="16" margin="20rpx 40rpx" padding="30">
+				<view class="pending-order-head" slot="head">
+					<view class="pending-order-head-left">
+						<b>P</b>
+						{{ item.roadName }}
+					</view>
+					<view class="pending-order-head-right" @click="  onRoadInfo(item)">
+						<u-icon class="arrow-down" name="arrow-down" size="32" color="#aaa"></u-icon>
+					</view>
+				</view>
+				<view class="pending-order-body" slot="body">
+					<view class="pending-order-body-nav">
+						<view class="nav-item nav-manual" @click="orderNavclick()" :class="{ active: orderNav == 0 }">
+							手动缴费</view>
+						<view class="nav-item nav-auto" @click="orderNavclick()" :class="{ active: orderNav == 1 }">无感支付
+						</view>
+					</view>
+					<view class="pending-order-body-wrap" v-show="orderNav == 0">
+						<view class="pending-order-body-left">
+							<view class="car-number">{{ item.vehicleNo }}</view>
+							<view class="item-cell">
+								<span class="pending-order-body-left-label">入场时间:</span>
+								<span>{{ item.inTime }}</span>
+							</view>
+							<view class="item-cell">
+								<span class="pending-order-body-left-label">出场时间:</span>
+								<span>{{item.outTime}}</span>
+							</view>
+							<view class="item-cell">
+								<span class="pending-order-body-left-label">预计金额:</span>
+								<span>{{ item.payAmount }}</span>
+							</view>
+							<!-- <view class="item-cell">
                 <span class="pending-order-body-left-label">出场时间:</span>
                 <span>{{item.outTime||'停放中'}}</span>
               </view>
@@ -141,421 +100,451 @@
                   <span class="number" v-else>停放中</span>
                 </span>
               </view>-->
-            </view>
-            <view class="pending-order-body-right">
-              <view class="order">停车泊位:{{ item.spaceName }}</view>
-            </view>
-            <view class="go-pay-wrap">
-              <view class="go-pay" @click="goPay(item.id)">出场缴费</view>
-            </view>
-          </view>
-          <view class="pending-order-body-wrap" v-show="orderNav == 1">
-            <view v-if="contractStatus == 0" class="nosign">
-              <view class="nosign1">您的车牌未签约贵州银行无感支付</view>
-              <view class="nosign2">请下载贵州银行手机银行app进行签约</view>
-            </view>
-            <view v-if="contractStatus == 1" class="sign">
-              <view class="sign1">您已签约贵州银行无感支付</view>
-              <view class="sign2">停车出场时将默认使用无感支付进行支付</view>
-            </view>
-          </view>
-        </view>
-      </u-card>
-    </template>
-	
+						</view>
+						<view class="pending-order-body-right">
+							<view class="order">停车泊位:{{ item.spaceName }}</view>
+						</view>
+						<view class="go-pay-wrap">
+							<view class="go-pay" @click="goPay(item.id)" v-if="item.payAmount != 0">出场缴费</view>
+							<view class="go-pay1" v-else>出场缴费</view>
+						</view>
+					</view>
+					<view class="pending-order-body-wrap" v-show="orderNav == 1">
+						<view v-if="contractStatus == 0" class="nosign">
+							<view class="nosign1">您的车牌未签约贵州银行无感支付</view>
+							<view class="nosign2">请下载贵州银行手机银行app进行签约</view>
+						</view>
+						<view v-if="contractStatus == 1" class="sign">
+							<view class="sign1">您已签约贵州银行无感支付</view>
+							<view class="sign2">停车出场时将默认使用无感支付进行支付</view>
+						</view>
+					</view>
+				</view>
+			</u-card>
+		</template>
+
 		<!-- ===================================== 优惠活动 ===================================== -->
-    <view class="promotion-box">
-      <view class="promotion-title">
-        <text>优惠活动</text>
-      </view>
-      <view class="promotion-banner">
-        <u-swiper :list="promotionBannerList" @click="promotionBannerClick" height="221"></u-swiper>
-      </view>
-    </view>
+		<view class="promotion-box">
+			<view class="promotion-title">
+				<text>优惠活动</text>
+			</view>
+			<view class="promotion-banner">
+				<u-swiper :list="promotionBannerList" @click="promotionBannerClick" height="221"></u-swiper>
+			</view>
+		</view>
 
 		<!-- ===================================== 绑定车牌号弹框 ===================================== -->
-    <u-modal
-      v-model="bindCarShow"
-      title="绑定车牌号"
-      :show-cancel-button="true"
-      confirm-text="去绑定"
-      content="首次使用请先绑定您的车牌"
-      @confirm="$u.route({ url: 'pages/myCars/myCars' })"
-    ></u-modal>
+		<u-modal v-model="bindCarShow" title="绑定车牌号" :show-cancel-button="true" confirm-text="去绑定"
+			content="首次使用请先绑定您的车牌" @confirm="$u.route({ url: 'pages/myCars/myCars' })"></u-modal>
 
 		<!-- ===================================== 停车场信息弹框 ===================================== -->
-    <u-popup
-      class="popup-order-details"
-      v-model="showOrderDetails"
-      mode="center"
-      width="90%"
-      border-radius="20"
-    >
-      <view class="popup-order-details-til">停车场信息</view>
-      <view class="popup-order-details-con">
-        <dl>
-          <dt>路段名称:</dt>
-          <dd>{{ popupOrderDetails.roadName }}</dd>
-        </dl>
-        <dl>
-          <dt>路段编码:</dt>
-          <dd>{{ popupOrderDetails.roadNo }}</dd>
-        </dl>
-        <dl>
-          <dt>联系人:</dt>
-          <dd>{{ popupOrderDetails.manager }}</dd>
-        </dl>
-        <dl>
-          <dt>联系电话:</dt>
-          <dd @click="phoneCall(popupOrderDetails.telephone)">{{ popupOrderDetails.telephone }}</dd>
-        </dl>
-      </view>
-      <view class="popup-order-details-footer" @click="closeOrderDetails">知道了</view>
-    </u-popup>
-    
+		<u-popup class="popup-order-details" v-model="showOrderDetails" mode="center" width="90%" border-radius="20">
+			<view class="popup-order-details-til">停车场信息</view>
+			<view class="popup-order-details-con">
+				<dl>
+					<dt>路段名称:</dt>
+					<dd>{{ popupOrderDetails.roadName }}</dd>
+				</dl>
+				<dl>
+					<dt>路段编码:</dt>
+					<dd>{{ popupOrderDetails.roadNo }}</dd>
+				</dl>
+				<dl>
+					<dt>联系人:</dt>
+					<dd>{{ popupOrderDetails.manager }}</dd>
+				</dl>
+				<dl>
+					<dt>联系电话:</dt>
+					<dd @click="phoneCall(popupOrderDetails.telephone)">{{ popupOrderDetails.telephone }}</dd>
+				</dl>
+			</view>
+			<view class="popup-order-details-footer" @click="closeOrderDetails">知道了</view>
+		</u-popup>
+
 		<!-- ===================================== 支付方式弹框 ===================================== -->
-    <PaymentMethod
-      :payWayPop="payWayPop"
-      :curOrderList="curOrderList"
-      :jumpUrl="jumpUrl"
-      @closePaymentMethod="closePaymentMethod"
-    ></PaymentMethod>
-    <u-toast ref="uToast" />
-  </view>
+		<PaymentMethod
+			:payWayPop="payWayPop"
+			:curOrderList="curOrderList"
+			:jumpUrl="jumpUrl"
+			@closePaymentMethod="closePaymentMethod"
+		></PaymentMethod>
+		<u-toast ref="uToast" />
+	</view>
 </template>
 
 <script>
-import getUrlParams from '../../utils/getUrlParams.js'
-import PaymentMethod from '@/pages/paymentMethod/paymentMethod.vue'
-export default {
-  components: {
-    PaymentMethod
-  },
-  data () {
-    return {
-			// 城市选择框
-			cityOpen: false,
-			// 选中城市
-      city: '贵州省',
-			// 搜索框值
-      keyword: '',
-			// 轮播图
-      bannerList: [
-        {
-          image: require('@/static/img/index-banner01.png')
-        }
-      ],
-			// 订单列表
-      orderList: [],
-			// 微信code
-      code: null,
-			// 手动,无感
-      orderNav: '',
-			// 绑定车询问弹窗
-      bindCarShow: false,
-			// 是否线上订单细节
-      showOrderDetails: false,
-			// 订单详情
-      popupOrderDetails: [],
-			// 消息列表
-      noticeList: [],
-      // 优惠活动广告图
-      promotionBannerList: [
-        {
-          id: 1,
-          image: '/static/img/promotion-banner-1.png',
-          title: '1分钱停车'
-        },
-        {
-          id: 2,
-          image: '/static/img/promotion-banner-2.png',
-          title: '八折停车'
-        }
-      ],
-			// 签约状态
-      contractStatus: '',
-      vehicleId: '',
-      recordList: [],
-      // 支付方式弹框
-      payWayPop: false,
-      // 订单号
-      curOrderList: [],
-			// 当前位置经纬度
-      latLongItude: {},
-			// 跳转地址
-      jumpUrl: '',
-			// 宫格菜单列表
-			gridList: [
-				{
-					url: 'pages/payLists/payLists',
-					imageUrl: '../../static/img/index-content-nav-01.png',
-					title: '停车缴费'
-				},
-				{
-					url: 'pages/favourableActivity/favourableActivity',
-					imageUrl: '../../static/img/index-content-nav-02.png',
-					title: '优惠活动'
-				},
-				{
-					url: 'pages/myCars/myCars',
-					imageUrl: '../../static/img/index-content-nav-03.png',
-					title: '车辆管理'
-				},
-				{
-					url: 'pages/searchparking/searchparking',
-					imageUrl: '../../static/img/index-content-nav-04.png',
-					title: '我的停车'
+	import getUrlParams from '../../utils/getUrlParams.js'
+	import PaymentMethod from '@/pages/paymentMethod/paymentMethod.vue'
+	export default {
+		components: {
+			PaymentMethod
+		},
+		data() {
+			return {
+				// 城市选择框
+				cityOpen: false,
+				// 选中城市
+				city: '贵州省',
+				// 搜索框值
+				keyword: '',
+				// 轮播图
+				bannerList: [{
+					image: require('@/static/img/index-banner01.png')
+				}],
+				// 订单列表
+				orderList: [],
+				// 微信code
+				code: null,
+				// 手动,无感
+				orderNav: '',
+				// 绑定车询问弹窗
+				bindCarShow: false,
+				// 是否线上订单细节
+				showOrderDetails: false,
+				// 订单详情
+				popupOrderDetails: [],
+				// 消息列表
+				noticeList: [],
+				// 优惠活动广告图
+				promotionBannerList: [{
+						id: 1,
+						image: '/static/img/promotion-banner-1.png',
+						title: '1分钱停车'
+					},
+					{
+						id: 2,
+						image: '/static/img/promotion-banner-2.png',
+						title: '八折停车'
+					}
+				],
+				// 签约状态
+				contractStatus: '',
+				vehicleId: '',
+				recordList: [],
+				// 支付方式弹框
+				payWayPop: false,
+				// 订单号
+				curOrderList: [],
+				// 当前位置经纬度
+				latLongItude: {},
+				// 跳转地址
+				jumpUrl: '',
+				// 宫格菜单列表
+				gridList: [{
+						url: 'pages/payLists/payLists',
+						imageUrl: '../../static/img/index-content-nav-01.png',
+						title: '停车缴费'
+					},
+					{
+						url: 'pages/favourableActivity/favourableActivity',
+						imageUrl: '../../static/img/index-content-nav-02.png',
+						title: '优惠活动'
+					},
+					{
+						url: 'pages/myCars/myCars',
+						imageUrl: '../../static/img/index-content-nav-03.png',
+						title: '车辆管理'
+					},
+					{
+						url: 'pages/searchparking/searchparking',
+						imageUrl: '../../static/img/index-content-nav-04.png',
+						title: '我的停车'
+					}
+				],
+				totalActualAmount: '', //缴费总额
+				totalPayAmount: '', //应支付总额
+				totalCount: '', //缴费总笔数 
+				totalPayCount: '' //应支付总笔数
+			}
+		},
+		onLoad(page) {
+			const locationLocaturl = window.location.search
+			const type = getUrlParams(locationLocaturl, 'type')
+			if (type && type === 'jumpurl') {
+				const jumpurl = localStorage.getItem('jumpUrl')
+				if (jumpurl) {
+					uni.showLoading({
+						title: '正在跳转中...'
+					})
+					setTimeout(() => {
+						uni.hideLoading()
+						location.href = jumpurl
+					}, 0)
 				}
-			]
-    }
-  },
-  onShow () {
-    this.handleGetIndexData()
-    this.getLocation()
-    const locationLocaturl = window.location.search
-    this.code = getUrlParams(locationLocaturl, 'code')
-    if (this.code && !this.$store.state.vuex_wxinfo.openId) { this.handleGetWXInfo(this.code) };
-  },
-  methods: {
-    // 定位
-    getLocation () {
-      const that = this
-      if (navigator.geolocation) {
-        // 判断是否有这个对象
-        navigator.geolocation.getCurrentPosition(function (pos) {
-          that.latLongItude = { latitude: pos.coords.latitude, longitude: pos.coords.longitude }
-          that.latitude = pos.coords.latitude
-          that.longitude = pos.coords.longitude
-          that.getCityNameByLonLat(that.latLongItude)
-        }, function (err) {
-          // 错误处理
-          switch (err.code) {
-            case 1:
-              alert('位置服务被拒绝。')
-              break
-            case 2:
-              alert('暂时获取不到位置信息。')
-              break
-            case 3:
-              alert('获取信息超时。')
-              break
-            default:
-              alert('未知错误。')
-              break
-          }
-        })
-      } else {
-				alert('当前系统不支持GPS API')
-      };
-    },
-    // 通过经纬度获取地区详细信息
-    getCityNameByLonLat ({ longitude, latitude } = {}) {
-      const that = this
-      uni.showLoading({
-        title: '加载中',
-        mask: true
-      })
-      const str = `output=jsonp&key=BOGBZ-2BZ33-O4L32-Y3QJR-PGN66-RFFEL&location=${latitude},${longitude}`
-      this.$jsonp('https://apis.map.qq.com/ws/geocoder/v1/?' + str, {}).then(res => {
-        uni.hideLoading()
-        if (res.status == 0) {
-          if (res.result.ad_info) {
-            that.city = res.result.ad_info.district
-          }
-        }
-      })
-    },
-    // 轮播图点击
-    swiperClick (item) {
-      this.$u.route({
-        url: 'pages/bannerDetails/bannerDetails',
-        params: {
-          id: this.bannerList[item].id
-        }
-      })
-    },
-    // 切换无感和手动
-    orderNavclick () {
-      uni.showLoading({
-        title: '加载中'
-      })
-      this.$u.api.feePay({ vehicleId: this.recordList[1] })
-        .then(res => {
-          if (res.code == 200) {
-            this.handleGetIndexData()
-          } else {
+			}
+		},
+		onShow() {
+			this.handleGetIndexData()
+			this.getLocation()
+			const locationLocaturl = window.location.search
+			this.code = getUrlParams(locationLocaturl, 'code')
+			if (this.code && !this.$store.state.vuex_wxinfo.openId) {
+				this.handleGetWXInfo(this.code)
+			};
+		},
+		methods: {
+			// 定位
+			getLocation() {
+				const that = this
+				if (navigator.geolocation) {
+					// 判断是否有这个对象
+					navigator.geolocation.getCurrentPosition(function(pos) {
+						that.latLongItude = {
+							latitude: pos.coords.latitude,
+							longitude: pos.coords.longitude
+						}
+						that.latitude = pos.coords.latitude
+						that.longitude = pos.coords.longitude
+						that.getCityNameByLonLat(that.latLongItude)
+					}, function(err) {
+						// 错误处理
+						switch (err.code) {
+							case 1:
+								alert('位置服务被拒绝。')
+								break
+							case 2:
+								alert('暂时获取不到位置信息。')
+								break
+							case 3:
+								alert('获取信息超时。')
+								break
+							default:
+								alert('未知错误。')
+								break
+						}
+					})
+				} else {
+					alert('当前系统不支持GPS API')
+				};
+			},
+			// 通过经纬度获取地区详细信息
+			getCityNameByLonLat({
+				longitude,
+				latitude
+			} = {}) {
+				const that = this
+				uni.showLoading({
+					title: '加载中',
+					mask: true
+				})
+				const str = `output=jsonp&key=BOGBZ-2BZ33-O4L32-Y3QJR-PGN66-RFFEL&location=${latitude},${longitude}`
+				this.$jsonp('https://apis.map.qq.com/ws/geocoder/v1/?' + str, {}).then(res => {
+					uni.hideLoading()
+					if (res.status == 0) {
+						if (res.result.ad_info) {
+							that.city = res.result.ad_info.district
+						}
+					}
+				})
+			},
+			// 轮播图点击
+			swiperClick(item) {
+				this.$u.route({
+					url: 'pages/bannerDetails/bannerDetails',
+					params: {
+						id: this.bannerList[item].id
+					}
+				})
+			},
+			// 切换无感和手动
+			orderNavclick() {
+				uni.showLoading({
+					title: '加载中'
+				});
+				console.log('this.recordList[1]', this.recordList[1]);
+				console.log('orderNav', this.orderNav)
+				if (!this.recordList[1]) {
+					uni.hideLoading();
+					return
+				}
+				this.$u.api.feePay({
+						vehicleId: this.recordList[1]
+					})
+					.then(res => {
+						console.log('res', res);
+						if (res?.code == 200) {
+							this.handleGetIndexData()
+						} else {
+
+							// this.$refs.uToast.show({
+							//   title: res?.msg,
+							//   type: 'error'
+							// })
+						}
+						uni.hideLoading()
+					}).catch(err => {
+						console.log('orderNavclick err', err)
+					})
+			},
+			/**
+			 * 跳转页面
+			 * path 跳转路径
+			 * flag 是否存储
+			 * */
+			openPage(path, flag) {
+				this.$u.route({
+					url: path
+				})
+				if (flag) {
+					uni.setStorage({
+						key: 'messageBack',
+						data: 'pages/index/index'
+					})
+				}
+			},
+			// 搜索
+			handleSearch() {
+				uni.reLaunch({
+					url: `/pages/parkingLists/parkingLists?keyword=${this.keyword}`
+				})
+			},
+			// 城市选择
+			handleCitySelect() {
+				this.cityOpen = true
+			},
+			// 城市选择下拉变化
+			cityChange(e) {
+				if (e.area) {
+					this.city = e.area.label
+				} else if (e.city) {
+					this.city = e.city.label
+				} else {
+					this.city = e.province.label
+				}
+			},
+			// 获取首页数据
+			handleGetIndexData() {
+				uni.showLoading({
+					title: '加载中'
+				})
+				this.$u.api.getIndexData()
+					.then(res => {
+						if (res.code === 200) {
+							// 轮播
+							const bannerList = []
+							const banner = res.data?.advs
+							banner.forEach(item => {
+								const obj = {
+									image: item.bannerUrl,
+									id: item.id,
+									name: item.name,
+									content: item.content
+								}
+								bannerList.push(obj)
+							})
+							if (bannerList.length > 0) {
+								this.bannerList = bannerList
+							}
+							// 是否有绑定车牌: 没有则通过弹框去绑定
+							const vehicleList = res.data?.vehicleList ?? []
+							if (vehicleList.length === 0) {
+								this.bindCarShow = true
+							}
+							// 无感和手动
+							const enableFeepay = []
+							const orderList = res.data?.orderList ?? []
+							orderList.forEach(item => {
+								if (item.enableFeepay) {
+									enableFeepay.push(item.enableFeepay)
+								} else {
+									enableFeepay.push(0)
+								}
+								enableFeepay.push(item.vehicleId)
+								if (item.contractStatus) {
+									enableFeepay.push(item.contractStatus)
+								} else {
+									enableFeepay.push(0)
+								}
+							})
+							this.totalActualAmount = res.data?.payedInfo?.totalActualAmount
+							this.totalCount = res.data?.payedInfo?.totalCount
+							this.totalPayAmount = res.data?.payingInfo?.totalPayAmount
+							this.totalPayCount = res.data?.payingInfo?.totalCount
+							this.recordList = enableFeepay
+							this.orderNav = enableFeepay[0]
+							this.contractStatus = enableFeepay[2]
+							this.orderList = res.data.orderList
+							// 消息提示
+							const newsList = []
+							const news = res.data?.news ?? []
+							news.forEach(item => {
+								newsList.push(item.content)
+							})
+							this.noticeList = newsList
+							uni.hideLoading()
+						} else {
+							this.$refs.uToast.show({
+								title: res.msg,
+								type: 'error'
+							})
+							uni.hideLoading()
+						}
+					}).catch(err => {
+						console.log('err', err)
 						this.$refs.uToast.show({
-						  title: res.msg,
-						  type: 'error'
+							title: '系统异常',
+							type: 'error'
+						})
+						uni.hideLoading()
+					})
+			},
+			// 去支付,选择支付方式
+			goPay(orderId) {
+				const href = location.href.split('#')
+				this.jumpUrl = href[0] + '#/pages/center/order/orderDetails/orderDetails?orderId=' + orderId + '&type=open'
+				this.payWayPop = true
+				this.curOrderList = []
+				this.curOrderList.push(orderId)
+			},
+			// 获取路段详情
+			onRoadInfo(item) {
+				this.$u.api.roadInfoById({
+						id: item.roadId
+					})
+					.then(res => {
+						this.popupOrderDetails = res.data
+						this.showOrderDetails = true
+					}).catch(err => {
+						this.$refs.uToast.show({
+							title: '系统异常',
+							type: 'error'
+						})
+					})
+			},
+			// 关闭路段详情弹框
+			closeOrderDetails() {
+				this.showOrderDetails = false
+			},
+			// 打电话
+			phoneCall(phone) {
+				uni.makePhoneCall({
+					phoneNumber: phone
+				})
+			},
+			/**
+			 * 点击优惠活动的广告图
+			 * */
+			promotionBannerClick(cur) {
+				this.promotionBannerList.forEach((item, index) => {
+					if (cur === index) {
+						this.$u.route({
+							url: 'pages/favourableActivity/favourableActivity',
+							params: {
+								title: item.title,
+								id: item.id
+							}
 						})
 					}
-          uni.hideLoading()
-        })
-    },
-    /**
-     * 跳转页面
-     * path 跳转路径
-     * flag 是否存储
-     * */
-    openPage (path, flag) {
-      this.$u.route({
-        url: path
-      })
-      if (flag) {
-        uni.setStorage({
-          key: 'messageBack',
-          data: 'pages/index/index'
-        })
-      }
-    },
-    // 搜索
-    handleSearch () {
-      uni.reLaunch({
-        url: `/pages/parkingLists/parkingLists?keyword=${this.keyword}`
-      })
-    },
-    // 城市选择
-    handleCitySelect () {
-      this.cityOpen = true
-    },
-    // 城市选择下拉变化
-    cityChange (e) {
-      if (e.area) {
-        this.city = e.area.label
-      } else if (e.city) {
-        this.city = e.city.label
-      } else {
-        this.city = e.province.label
-      }
-    },
-    // 获取首页数据
-    handleGetIndexData () {
-      uni.showLoading({
-        title: '加载中'
-      })
-      this.$u.api.getIndexData()
-        .then(res => {
-          if (res.code === 200) {
-            // 轮播
-            const bannerList = []
-            const banner = res.data?.advs
-            banner.forEach(item => {
-              const obj = {
-                image: item.bannerUrl,
-                id: item.id,
-                name: item.name,
-                content: item.content
-              }
-              bannerList.push(obj)
-            })
-            if (bannerList.length > 0) {
-              this.bannerList = bannerList
-            }
-            // 是否有绑定车牌: 没有则通过弹框去绑定
-            const vehicleList = res.data?.vehicleList ?? []
-            if (vehicleList.length === 0) {
-              this.bindCarShow = true
-            }
-            // 无感和手动
-            const enableFeepay = []
-						const orderList = res?.data?.orderList ?? []
-            orderList.forEach(item => {
-              if (item.enableFeepay) {
-                enableFeepay.push(item.enableFeepay)
-              } else {
-                enableFeepay.push(0)
-              }
-              enableFeepay.push(item.vehicleId)
-              if (item.contractStatus) {
-                enableFeepay.push(item.contractStatus)
-              } else {
-                enableFeepay.push(0)
-              }
-            })
-            this.recordList = enableFeepay
-            this.orderNav = enableFeepay[0]
-            this.contractStatus = enableFeepay[2]
-            this.orderList = res.data.orderList
-            // 消息提示
-            const newsList = []
-            const news = res.data?.news ?? []
-            news.forEach(item => {
-              newsList.push(item.content)
-            })
-            this.noticeList = newsList
-            uni.hideLoading()
-          } else {
-            this.$refs.uToast.show({
-              title: res.msg,
-              type: 'error'
-            })
-            uni.hideLoading()
-          }
-        }).catch(err => {
-          this.$refs.uToast.show({
-            title: '系统异常',
-            type: 'error'
-          })
-          uni.hideLoading()
-        })
-    },
-    // 去支付,选择支付方式
-    goPay (orderId) {
-			const href = location.href.split('#')
-			this.jumpUrl = href[0] + '#/pages/center/order/orderDetails/orderDetails?orderId=' + orderId + '&type=open'
-      this.payWayPop = true
-      this.curOrderList = []
-      this.curOrderList.push(orderId)
-    },
-    // 获取路段详情
-    onRoadInfo (item) {
-      this.$u.api.roadInfoById({
-        id: item.roadId
-      })
-        .then(res => {
-          this.popupOrderDetails = res.data
-          this.showOrderDetails = true
-        }).catch(err => {
-          this.$refs.uToast.show({
-            title: '系统异常',
-            type: 'error'
-          })
-        })
-    },
-    // 关闭路段详情弹框
-    closeOrderDetails () {
-      this.showOrderDetails = false
-    },
-    // 打电话
-    phoneCall (phone) {
-      uni.makePhoneCall({
-        phoneNumber: phone
-      })
-    },
-    /**
-     * 点击优惠活动的广告图
-     * */
-    promotionBannerClick (cur) {
-      this.promotionBannerList.forEach((item, index) => {
-        if (cur === index) {
-          this.$u.route({
-            url: 'pages/favourableActivity/favourableActivity',
-            params: {
-              title: item.title,
-              id: item.id
-            }
-          })
-        }
-      })
-    },
-    // 关闭支付弹框
-    closePaymentMethod () {
-      this.payWayPop = false
-    }
-  }
-}
+				})
+			},
+			// 关闭支付弹框
+			closePaymentMethod() {
+				this.payWayPop = false
+			}
+		}
+	}
 </script>
 
 <style lang="scss" scoped>
-@import "./index.scss";
+	@import "./index.scss";
 </style>

+ 7 - 1
pages/myCars/myCars.vue

@@ -78,7 +78,13 @@
 								type: 'switchTab',
 								url: res.data
 							})
-				    }
+				    },
+					fail:()=> {
+						this.$u.route({
+							type: 'switchTab',
+							url: 'pages/index/index'
+						})
+					}
 				})
 			},
 			// 获取车辆列表

+ 57 - 0
pages/parkingLock/parkingLock.scss

@@ -195,4 +195,61 @@
   to{
     transform: rotate(359deg);
   }
+}
+.loadingSelect{
+	    text-align: center;
+	    margin-top: 20rpx;
+}
+.spinner {
+  margin: auto;
+  width: 50px;
+  height: 60px;
+  text-align: center;
+  font-size: 10px;
+}
+ 
+.spinner > view {
+  background-color: #6495ED;
+  height: 100%;
+  width: 10rpx;
+  margin-right: 2rpx;
+  display: inline-block;
+   
+  -webkit-animation: stretchdelay 1.2s infinite ease-in-out;
+  animation: stretchdelay 1.2s infinite ease-in-out;
+}
+ 
+.spinner .rect2 {
+  -webkit-animation-delay: -1.1s;
+  animation-delay: -1.1s;
+}
+ 
+.spinner .rect3 {
+  -webkit-animation-delay: -1.0s;
+  animation-delay: -1.0s;
+}
+ 
+.spinner .rect4 {
+  -webkit-animation-delay: -0.9s;
+  animation-delay: -0.9s;
+}
+ 
+.spinner .rect5 {
+  -webkit-animation-delay: -0.8s;
+  animation-delay: -0.8s;
+}
+ 
+@-webkit-keyframes stretchdelay {
+  0%, 40%, 100% { -webkit-transform: scaleY(0.4) } 
+  20% { -webkit-transform: scaleY(1.0) }
+}
+ 
+@keyframes stretchdelay {
+  0%, 40%, 100% {
+    transform: scaleY(0.4);
+    -webkit-transform: scaleY(0.4);
+  }  20% {
+    transform: scaleY(1.0);
+    -webkit-transform: scaleY(1.0);
+  }
 }

+ 44 - 4
pages/parkingLock/parkingLock.vue

@@ -82,6 +82,16 @@
 			:jumpUrl="jumpUrl"
 			@closePaymentMethod="closePaymentMethod"></PaymentMethod>
 		<u-toast ref="uToast" />
+		<u-popup v-model="show" mode="center" border-radius="14" width="200rpx" height="200rpx">
+				<view class="loadingSelect">订单查询中...</view>
+				<view class="spinner">
+					<view class="rect1"></view>
+					<view class="rect2"></view>
+					<view class="rect3"></view>
+					<view class="rect4"></view>
+					<view class="rect5"></view>
+				</view>
+		</u-popup>
 	</view>
 </template>
 
@@ -112,7 +122,8 @@
 				// 订单id
 				orderId: null,
 				// 重定向地址
-				jumpUrl: location.href
+				jumpUrl: location.href + '&isBack=1',
+				show: true
 			}
 		},
 		onLoad(page) {
@@ -128,9 +139,18 @@
 			}
 		},
 		onShow() {
-			this.timer1 = setInterval(() => {
-				this.getOrderDetails(this.orderId)
-			}, 5000)
+			if(this.orderId){
+				this.timer1 = setInterval(() => {
+					// uni.showLoading({
+					//     title: '订单查询中'
+					// });
+					this.show = true
+					this.getOrderDetails(this.orderId)
+				}, 2000)				
+			}else{
+				this.show = false
+			}
+			
 		},
 		onHide() {
 			if (this.timer) {
@@ -146,12 +166,32 @@
 			},
 			// 查询订单信息
 			getOrderDetails(id) {
+				// uni.showLoading({
+				//     title: '订单查询中'
+				// });
 				this.$u.api.getOrderDetail({id: id})
 					.then(res => {
+						
 						console.log(res)
 						if (res.code === 200) {
+							// 获取页面完整url
+							const local = window.location.href
+							// 获取url后面的参数
+							const locationLocaturl = window.location.search;
+							// 截取url中的isBack
+							let isBack = getUrlParams(local, "isBack");
+							console.log('isBack',isBack);
+							console.log('isBack',isBack == null || isBack != '1');
+							// 如果没有isBack,则去请求
+							if (!isBack) {
+								// uni.hideLoading();
+								this.show = false
+								clearInterval(this.timer1)
+							} 
 							this.orderInfo = res.data
 							if (res.data.payStatus === 1) {
+								// uni.hideLoading();
+								this.show = false
 								clearInterval(this.timer1)
 								this.checkEqupment()
 							}

+ 21 - 0
pages/payLists/payLists.scss

@@ -56,6 +56,27 @@
 		}
 	}
 }
+.bottom{
+	background-color: #FFFFFF;
+	height: 240rpx;
+	width: 100%;
+	position: fixed;
+	z-index: 1000;
+	bottom: 40rpx;
+}
+.bottom-total{
+	font-size: 32rpx;
+	border-radius: 6rpx;
+	width: 710rpx;
+	text-align: center;
+	padding-top: 16rpx;
+	background-color: #E4F3FF;
+	height: 72rpx;
+	margin: 60rpx 20rpx;
+	.total{
+		color: #3397FA;
+	}
+}
 .button-wrap{
 	height: 120rpx;
 	.button{

+ 15 - 5
pages/payLists/payLists.vue

@@ -18,6 +18,7 @@
 							<view class="pay-center-item" v-if="payItem.orderStatus !== 1">出场时间:{{payItem.outTime}}</view>
 							<view class="pay-center-item" v-if="payItem.orderStatus !== 1">停留时间:{{payItem.duration}}</view>
 							<view class="pay-center-item">应付金额:<span class="pay-amount">{{payItem.payAmount}}</span></view>
+							<view class="pay-center-item" v-if="payItem.deviceType != 1">车位锁设备号:{{payItem.deviceNo}}</view>
 						</view>
 						<view class="pay-bottom">
 							<!-- <u-cell-item title="去支付" @click="paythis(payItem.orderId)" style="color: #008CFF;"></u-cell-item> -->
@@ -27,10 +28,16 @@
 				</view>
 			</scroll-view>
 		</mescroll-body>
-		<view class="button-wrap" v-if="payList.length&&payList.length>=1">
+		<view class="bottom">
+			<view class="bottom-total">
+				累计欠费<span class="total">{{totalCount}}</span>笔,合计<span class="total">{{totalPayAmount}}</span>元
+			</view>
+			<view class="button-wrap" v-if="payList.length&&payList.length>=1">
 			<!-- <button class="button" type="primary" @click="all()">全部缴费</button> -->
 			<button class="button" type="primary" @click="confirmPrice()">全部缴费</button>
 		</view>
+		</view>
+		
 		<!-- 缴费提示-->
 		<u-modal
 			v-model="payTipsPop"
@@ -72,6 +79,8 @@
 		},
 		data() {
 			return {
+				totalPayAmount:'',
+				totalCount:'',
 				currentPayUrl: "",
 				payList: [],
 				list: [],
@@ -137,20 +146,21 @@
 				this.$u.api.getOrderList({pageSize:pageSize ,pageNum: pageNum, paying: true})
 				.then(res=>{
 					// 接口返回的当前页数据列表 (数组)
-					let curPageData = res.data.rows;
+					let curPageData = res.data.pageInfo.rows;
 					// 接口返回的当前页数据长度 (如列表有26个数据,当前页返回8个,则curPageLen=8)
 					let curPageLen = curPageData.length; 
 					// 接口返回的总页数 (如列表有26个数据,每页10条,共3页; 则totalPage=3)
-					let totalPage = res.data.pages; 
+					let totalPage = res.data.pageInfo.pages; 
 					// 接口返回的总数据量(如列表有26个数据,每页10条,共3页; 则totalSize=26)
-					let totalSize = res.data.total; 
+					let totalSize = res.data.pageInfo.total; 
 					// 接口返回的是否有下一页 (true/false)
 					// let hasNext = data.pages; 
 					
 					//设置列表数据
 					if(page.num == 1) this.payList = []; //如果是第一页需手动置空列表
 					this.payList = this.payList.concat(curPageData); //追加新数据
-					
+					this.totalCount = res.data.costInfo.totalCount;
+					this.totalPayAmount = res.data.costInfo.totalPayAmount;
 					// 请求成功,隐藏加载状态
 					//方法一(推荐): 后台接口有返回列表的总页数 totalPage
 					this.mescroll.endByPage(curPageLen, totalPage); 

+ 60 - 0
pages/paymentMethod/jumpMiddle.vue

@@ -0,0 +1,60 @@
+<template>
+	<view>
+		<a ref="payUrlRef" :href="jumpUrl"></a>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				jumpUrl: "",
+			}
+		},
+		onload() {
+			let url = localStorage.getItem('jumpUrl');
+			// let url = this.cookie.get("jumpUrl");
+			if(url){
+				this.jumpUrl = url;
+			}else{
+				this.jumpUrl = 'https://h5.pdzhtc.com';
+			}
+			this.getOrderId()
+		},
+		mounted() {
+			this.$refs.payUrlRef.click();
+		},
+		methods: {
+			getOrderId(id) {
+				const localToken = JSON.parse(localStorage.getItem('lifeData') ?? '{}')
+				const token = localToken?.data?.vuex_token
+				$.ajax({
+					//请求方式
+					type : "get",
+					//请求地址
+					url : baseUrl + '/client/orderinfo/orderListByPoly/' + id,
+					// token
+					beforeSend: function(request) {
+						request.setRequestHeader("Authorization", 'Bearer ' + token);
+					},
+					//请求成功
+					success: function(result) {
+							if (result.code === 200) {
+								this.jumpUrl = result?.data?.jumpUrl ?? 'https://h5.pdzhtc.com'
+							} else {
+								alert(result.msg)
+							}
+					},
+					//请求失败,包含具体的错误信息
+					error: function(e){
+							alert('程序错误!')
+					}
+			});
+			}
+		}
+	}
+</script>
+
+<style>
+
+</style>

+ 5 - 6
pages/paymentMethod/paymentMethod.vue

@@ -136,12 +136,14 @@
 					openid: this.$store.state.vuex_wxinfo.openId,
 					deviceNo: deviceNo ? deviceNo : null
 				};
+				
 				await this.$wxApi.config();
 				this.$pay.wechatPay(params).then(res =>{
 					switch (Number(res.code)) {
 						case 0: // 成功
 							//#ifdef H5
-							window.location.reload();
+								
+								window.location.reload();
 							//#endif
 							break;
 						case 1: // 取消
@@ -181,12 +183,9 @@
 							// }
 							localStorage.setItem('jumpUrl', this.jumpUrl)
 							location.href = res.data.qrCodeUrl
+							// this.cookie.set("jumpUrl",this.jumpUrl);
 						} else {
-							uni.hideLoading()
-							this.$refs.uToast.show({
-								title: res.msg,
-								type: 'error',
-							});
+							uni.hideLoading();
 						}
 					})
 					.catch(err => {

+ 2 - 2
pages/searchparking/searchparking.vue

@@ -73,10 +73,10 @@
 					// 	type: 'success',
 					// });
 					//设置列表数据
-					let curPageData = res.data.rows; 
+					let curPageData = res.data.pageInfo.rows; 
 					// 接口返回的当前页数据长度 (如列表有26个数据,当前页返回8个,则curPageLen=8)
 					let curPageLen = curPageData.length; 
-					let totalPage = res.data.pages; 
+					let totalPage = res.data.pageInfo.pages; 
 					
 					if(page.num == 1) this.parkinglist = []; //如果是第一页需手动置空列表
 					this.parkinglist = this.parkinglist.concat(curPageData); //追加新数据

+ 8 - 1
static/html/wxPayCallback.html

@@ -49,10 +49,17 @@
 <body>
     <div class="container">
 		<div class="text-img">
+<<<<<<< HEAD
 			<img src="https://h5.pdzhtc.com/static/img/text-html-bg.png" alt="" width="290" height="100"/>
 		</div>
 		<div class="car-img">
 			<img src="https://h5.pdzhtc.com/static/img/car-html-bg.png" alt="" width="300" height="170"/>
+=======
+			<img src="https://h5.pdzhtc.com/static/img/text-html-bg.png" alt="" width="80%" height="20%"/>
+		</div>
+		<div class="car-img">
+			<img src="https://h5.pdzhtc.com/static/img/car-html-bg.png" alt="" width="65%" height="25%"/>
+>>>>>>> 07d8f3d90719874f4d560a7a8a47ab08f65cf0fc
 		</div>
 		<a href="javascript:goToBgzchina()" class="button">回到普定智慧停车</a>
 	</div>
@@ -89,7 +96,7 @@
         function goToBgzchina() {
             var mchData = {
                 action: 'jumpOut',
-                jumpOutUrl: jumpUrl || 'https://h5.pdzhtc.com' //要跳转到的页面。注意:不支持跳转到小程序
+                jumpOutUrl: 'https://h5.pdzhtc.com?type=jumpurl' //要跳转到的页面。注意:不支持跳转到小程序
             };
             var postData = JSON.stringify(mchData);
             parent.postMessage(postData, 'https://payapp.weixin.qq.com');