diff --git a/src/api/orderPay/orderPay.js b/src/api/orderPay/orderPay.js index dd4f27f..c24de4b 100644 --- a/src/api/orderPay/orderPay.js +++ b/src/api/orderPay/orderPay.js @@ -28,7 +28,7 @@ export function vxPayQuery(params) { // 微信 export function bankH5Pay(params) { // 农行 return request({ - url: 'abcBankPay/bankH5Pay', + url: 'abcBankPay/bankPayForH5', method: 'post', data: params }) diff --git a/src/api/payResult/payResult.js b/src/api/payResult/payResult.js new file mode 100644 index 0000000..f2a56c2 --- /dev/null +++ b/src/api/payResult/payResult.js @@ -0,0 +1,12 @@ +import request from '@/utils/request' + + + + +export function queryBankOrderState(params) { // 农行 + return request({ + url: 'abcBankPay/queryBankOrderState', + method: 'post', + data: params + }) +} diff --git a/src/assets/images/no.png b/src/assets/images/no.png new file mode 100644 index 0000000..42f5fef --- /dev/null +++ b/src/assets/images/no.png diff --git a/src/assets/images/ok.png b/src/assets/images/ok.png new file mode 100644 index 0000000..58c5b50 --- /dev/null +++ b/src/assets/images/ok.png diff --git a/src/components/orderPay.vue b/src/components/orderPay.vue index eeff9c2..bd16828 100644 --- a/src/components/orderPay.vue +++ b/src/components/orderPay.vue @@ -134,31 +134,64 @@ export default { console.log(this.clientBrowser) if (this.clientBrowser == '农行') { // 农行支付 - var aliParams = {}; - aliParams.orderId = this.orderId; - aliParams.carNumber = this.carNumber; - aliParams.payType = 1;// 1:支付宝 2:微信 3:银联 10:H5 4微信公众号 - aliParams.terminalSource = 7;//请求端来源 1: 任你停 2:pda 3:微信公共号 7:H5扫码 10页面支付 - aliParams.paySrcType = this.paySrcType;//101停车支付 - aliParams.orgId = this.$utils.myOrgId, - aliParams.backType = 2, - aliParams.PaymentLinkType = 1 - aliParams.recordArreaInfos = JSON.stringify(this.orderId); - console.log(aliParams) - - bankH5Pay(aliParams).then(response => { + var bankabcParams = {}; + bankabcParams.orderId = this.orderId; + bankabcParams.carNumber = this.carNumber; + bankabcParams.payType = 1;// 1:支付宝 2:微信 3:银联 10:H5 4微信公众号 + bankabcParams.terminalSource = 7;//请求端来源 1: 任你停 2:pda 3:微信公共号 7:H5扫码 10页面支付 + bankabcParams.paySrcType = this.paySrcType;//101停车支付 + bankabcParams.orgId = this.$utils.myOrgId, + bankabcParams.backType = 2, + bankabcParams.PaymentLinkType = 1 + bankabcParams.recordArreaInfos = JSON.stringify(this.orderId); + console.log(bankabcParams) + + bankH5Pay(bankabcParams).then(response => { console.log(response) - let res = response.data - let _token = res.split('TOKEN=')[1] - console.log(_token) - let _data = 'method=invokePayFromBrowser&tokenID='+_token - let cryData = CryptoJS.encrypt(_data, 'G9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvM3', 'EkpTEA3FbZFGGq8Y') - - let baseCRY = Base64.encode(cryData) - console.log(baseCRY) - window.location.href='bankabc:' + encodeURIComponent('{"method":"invokePayFromBrowser","param":'+baseCRY+'}') - // 即为加密后的数据。其中paramsEncode是需要加密的数据、 - // keyStr是加密时使用的key,与服务端一致、hash是偏移量,是一个随机生成的16位字符串。 + if(response.code=='0'){ + let res = response.data.PaymentURL + let _token = res.split('TOKEN=')[1] + let OrderNo = response.data.OrderNo + localStorage.setItem('OrderNum',OrderNo) + + + if(window.navigator.userAgent.indexOf('Bankabc/Portal') > -1) { + // alert('当前页面在新容器'); + AlipayJSBridge.call('startApp',{ + appId:'30603024', // 固定值 + param:{ + type:"3", // 3: 掌银内H5页面, + tokenId:_token, //商户传过来的tokenId + paySystem:"", //商户传过来的paySystem, 没有则传空字符串 + payType:"1111", //商户传过来的payType,没有则传'1111' + webviewURL:"", //商户传过来的回跳地址 + remark:"其他参数", //扩展备用 + showProgress:'NO', + backBehavior:'back' + }, + },function(result){ + + }); + } else { + // alert('当前页面在旧容器'); + // 旧支付方式 + window.location.href = 'https://www.abchina.com/luascript/mobilePayLua/'+ encodeURI('{"return":{"tokenID":"'+_token+'","backURL":"https://wxgzh.renniting.cn/wechatwuxi/Chifeng/TEST/sweeping_payment/codepay/index.html#/payResult","payType":""}}'); + + } + }else{ + alert('请重新扫码') + } + + + // console.log(_token) + // let _data = 'method=invokePayFromBrowser&tokenID='+_token + // let cryData = CryptoJS.encrypt(_data, 'G9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvM3', 'EkpTEA3FbZFGGq8Y') + // + // let baseCRY = Base64.encode(cryData) + // console.log(baseCRY) + // window.location.href='bankabc:' + encodeURIComponent('{"method":"invokePayFromBrowser","param":'+baseCRY+'}') + // // 即为加密后的数据。其中paramsEncode是需要加密的数据、 + // // keyStr是加密时使用的key,与服务端一致、hash是偏移量,是一个随机生成的16位字符串。 }) } diff --git a/src/components/payResult.vue b/src/components/payResult.vue new file mode 100644 index 0000000..e4db686 --- /dev/null +++ b/src/components/payResult.vue @@ -0,0 +1,75 @@ + + + + + diff --git a/src/router/index.js b/src/router/index.js index 1474bf5..bac470c 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -35,6 +35,14 @@ export default new Router({ component: () => import("@/components/orderPay.vue") }, + { + path: '/payResult', + name: 'payResult', + component: () => import("@/components/payResult.vue") + }, + + + ] })