gcz 4 роки тому
батько
коміт
39ca085447
4 змінених файлів з 65 додано та 3 видалено
  1. 5 0
      common/apiurl.js
  2. 5 1
      common/http.api.js
  3. 54 1
      pages/center/index.vue
  4. 1 1
      pages/index/index.vue

+ 5 - 0
common/apiurl.js

@@ -35,6 +35,11 @@ const apiurl = {
 	getOrderinfoUrl:'/orderinfo/paydetail/',
 	// 获取订单详情
 	getOrderDetailUrl:'/orderinfo/detail/',
+	
+	
+	
+	// 贵州银行支付
+	gzbankurl:'http://wx.hw.hongweisoft.com/pay/client/gzbank/paygate',
 }
 
 export {

+ 5 - 1
common/http.api.js

@@ -34,6 +34,9 @@ const install = (Vue, vm) => {
 	let getOrderinfo = (params = {}) => vm.$u.get(apiurl.getOrderinfoUrl+params.id);
 	let getOrderDetail = (params = {}) => vm.$u.get(apiurl.getOrderDetailUrl+params.id);
 	
+	//贵州银行支付
+	let gzbank = (params = {}) => vm.$u.post(apiurl.gzbankurl, params);
+	
 	
 	// 将各个定义的接口名称,统一放进对象挂载到vm.$u.api(因为vm就是this,也即this.$u.api)下
 	vm.$u.api = {
@@ -53,7 +56,8 @@ const install = (Vue, vm) => {
 		roadInfoById,
 		getOrderinfo,
 		getOrderList,
-		getOrderDetail
+		getOrderDetail,
+		gzbank
 	};
 }
 

+ 54 - 1
pages/center/index.vue

@@ -15,7 +15,10 @@
 		</view>
 		
 		<view class="u-m-t-20">
-			<u-cell-group>				
+			<u-cell-group>	
+				<u-cell-item title="贵州银行支付" @click="guizhouPay()">
+					<u-icon slot="icon" custom-prefix="custom-icon" size="35" name="wodecheliang"></u-icon>
+				</u-cell-item>
 				<u-cell-item title="我的车辆" @click="openPage('pages/myCars/myCars')">
 					<u-icon slot="icon" custom-prefix="custom-icon" size="35" name="wodecheliang"></u-icon>
 				</u-cell-item>
@@ -132,6 +135,56 @@
 				uni.makePhoneCall({
 				    phoneNumber: phone
 				});
+			},
+			// 贵州银行支付
+			guizhouPay(){
+				let tradeNo = new Date().getTime();
+				uni.setStorage({
+					key:'gzbankTradeNo',
+					data:tradeNo
+				});
+				this.$u.api.gzbank({orderId:tradeNo,openid:'111'})
+				.then(res=>{
+					let resData = res.data;
+					function toQueryPair(key, value) {
+					  if (typeof value == 'undefined') {
+					    return `&${key}=`;
+					  }
+					  return `&${key}=${value}`;
+					};
+					function objToParam(param) {
+					  if (Object.prototype.toString.call(param) !== '[object Object]') {
+					    return '';
+					  }
+					  let queryParam = '';
+					  for (let key in param) {
+					    if (param.hasOwnProperty(key)) {
+					      let value = param[key];
+					      queryParam += toQueryPair(key, encodeURIComponent(value));
+					    }
+					  }
+					  console.log('queryParam',queryParam)
+					  return queryParam.substr(1);
+					}
+					let bankLink = 'http://222.85.178.210:80/gateway/Merchantforurl.do?'+objToParam(resData);
+					console.log('gzbank',res);
+					console.log('bankLink',bankLink);
+					// console.log('URLEncode',URLEncode);
+				// 	let divForm = document.getElementsByTagName('divform')
+				// 	if (divForm.length) {
+				// 	     document.body.removeChild(divForm[0])
+				// 	}
+				//    const div = document.createElement('divform')
+				//    div.innerHTML = res.retBody // res.data就是sb支付宝返回给你的form
+				//    document.body.appendChild(div);
+				//    // document.forms[0].setAttribute('target', '_blank') // 加了_blank可能出问题所以我注释了
+				//    document.punchout_form.submit();
+				//    // document.getElementById('alipay_submit').submit();
+				// console.log('alipage',res);
+				}).catch(err=>{
+					console.log('gzbank err',err);
+				});
+				
 			}
 
 		}

+ 1 - 1
pages/index/index.vue

@@ -43,7 +43,7 @@
 			</view>
 		</u-card>
 		
-		<u-empty text="暂无停车信息" mode="list" class="u-m-t-80" v-if="!orderList"></u-empty>
+		<u-empty text="暂无停车信息" mode="list" class="u-m-t-80" v-if="!orderList||orderList.length<1"></u-empty>
 		<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">