博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mui框架支持微信支付宝支付源代码
阅读量:6913 次
发布时间:2019-06-27

本文共 3726 字,大约阅读时间需要 12 分钟。

hot3.png

              
支付

第三方支付

捐赠金额:
  • 支付方式:
  • 订单号:
  • 支付金额:
  • 支付状态:
/**引入js/beecloud.js**/var beecloud = {};  //定义一个beecloud对象var channels = null;  var w = null;/** *  定义一个支付通道payReq  *  data 回调参数 *  cbsuccess 成功回调返回的函数信息 *  cberror   失败返回的信息 * */beecloud.payReq = function(data, cbsuccess, cberror) {	doPay(data, cbsuccess, cberror);};// 定义一个随机函数 对象的商品信息订单号beecloud.genBillNo = function() {	var d = new Date();	var vYear = d.getFullYear();	var vMon = d.getMonth() + 1;	var vDay = d.getDate();	var h = d.getHours();	var m = d.getMinutes();	var se = d.getSeconds();	var ms = d.getMilliseconds();	var rnadom = Math.floor(Math.random() * 100000000 + 10000000).toString();	billno = "" + vYear + (vMon < 10 ? "0" + vMon : vMon) + (vDay < 10 ? "0" + vDay : vDay) + (h < 10 ? "0" + h : h) + (m < 10 ? "0" + m : m) + (se < 10 ? "0" + se : se) + ms;	return billno+rnadom;};mui.plusReady(function() {	//配置业务支持的支付通道,支付需要服务端支持,在BeeCloud上支持支付宝支付和微信支付;  	var support_channel = ['alipay', 'wxpay']; 	plus.payment.getChannels(function(s) {		console.log("s",s)       channels = s; // 支付跳转授权第三方成功回调信息	}, function(e) {		console.log("获取支付渠道信权限失败:" + e.message);	});});  // function getRandomHost() {	var hosts = ['https://apibj.beecloud.cn',		'https://apihz.beecloud.cn',		'https://apisz.beecloud.cn',		'https://apiqd.beecloud.cn'	];	return "" + hosts[parseInt(3 * Math.random())] + "/2/rest/app/bill";}/** * 获取支付通道 *  */function getPayChannel(bc_channel) {	var dc_channel_id = '';	switch (bc_channel) {		case 'ALI_APP':			dc_channel_id = 'alipay';			break;		case 'WX_APP':			dc_channel_id = 'wxpay';			break;		default:			break;	} 	for (var i in channels) {		if (channels[i].id == dc_channel_id) {			return channels[i];		}	}	return null;}/*** * * 支付回调函数 *  * */function doPay(payData, cbsuccess, cberror) {	if (w) return;   	w = plus.nativeUI.showWaiting();	mui.ajax(getRandomHost(), {		data: JSON.stringify(payData),		type: 'post',		dataType: 'json',		contentType: "application/json",		success: function(data) {			w.close();			w = null;			var paySrc = '';          			if (data.result_code == 0) {				var payChannel = getPayChannel(payData.channel);				if (payChannel) {					if (payChannel.id === 'alipay') {						paySrc = data.order_string;					} else if (payChannel.id === 'wxpay') {						var statement = {};						statement.appid = data.app_id;						statement.noncestr = data.nonce_str;						statement.package = data.package;						statement.partnerid = data.partner_id;						statement.prepayid = data.prepay_id;						statement.timestamp = parseInt(data.timestamp);						statement.sign = data.pay_sign;						paySrc = JSON.stringify(statement);					}				plus.payment.request(payChannel, paySrc, cbsuccess, cberror);				} else if (payData.channel == 'UN_WEB') {					//银联在线支付					var web = plus.webview.create('', "beecloudPay");					//注入JS,解决银联界面返回的问题					web.setJsFile('_www/js/95516.js');					web.addEventListener('loaded', function() {						if (!web.isVisible()) {							web.show();						}					});					web.loadData(data.html);				}			} else {				var bcError = {};				bcError.code = data.result_code;				bcError.message = data.result_msg + ":" + data.err_detail;				cberror(bcError);			}		},		error: function(xhr, errorType, error) {			w.close();			w = null;			cberror(error);		}	});}

 

转载于:https://my.oschina.net/u/3692906/blog/1829524

你可能感兴趣的文章
代码中字符串的本地化
查看>>
什么是EXT3文件系统
查看>>
【257期门诊集锦】探索式测试的奥秘
查看>>
NFS与samba
查看>>
第一篇博客-养成写博客的好习惯
查看>>
截至11月底 成都空港国际快件中心处理快件超20万票
查看>>
为KVM虚拟机添加多VLAN桥接网络
查看>>
Oracle取某一栏位逗号分隔之后的数据
查看>>
POST jpeg upload with AFNetworking
查看>>
简述计算机运行机制
查看>>
如何解决AIX的文件系统故障
查看>>
IllegalArgumentException: Illegal character in query at index........这个样的问题:转换问题...
查看>>
Linux必学的60个命令
查看>>
Java的版本信息
查看>>
老火罐了乐山
查看>>
小区缓存系统部署实例
查看>>
3 Web服务器安全加固
查看>>
Swap故障之swapoff failed: Cannot allocate memory
查看>>
我的友情链接
查看>>
Ztree简单实现
查看>>