/**
 * 订单支付
 */
import Vue from "vue";
//#ifdef H5
import $wxApi from "./wxapi.js";
//#endif

// import $http from "./utils/axios.js"
import $http from "./uview-ui/libs/request"

export default {
	//微信支付
	// wxPay(obj = {}) {
	// 	uni.showLoading({
	// 		title: '支付中'
	// 	});
	// 	return new Promise(r => {
	// 		$http.post("/client/wechat/pay",obj)
	// 			.then(res=>{
	// 				//#ifdef H5
	// 				$wxApi.JSAPI(res.data).then(r);
	// 				//#endif
	// 				this.payError(res);
	// 			}).catch(err =>{
	// 				// alert(err.msg);
	// 				console.log('pay err',err);
	// 			})
	// 	});
	// },
	// 微信支付
	wxPay(obj = {}, url = '/client/pay/wechat', jumpUrl) {
		uni.showLoading({
			title: '支付中'
		});
		return new Promise(r => {
			$http.post(url, obj)
				.then(res => {
					// 区分包月支付和普通支付
					if (res.data.needPay && !res.data.monthId) {
						//#ifdef H5
						$wxApi.JSAPI(res.data.wx, jumpUrl).then(r);
						//#endif
					} else if (res.data.monthId) {
						//#ifdef H5
						$wxApi.JSAPI(res.data.wx, jumpUrl).then(r);
						//#endif
					} else {
						uni.showToast({
							title: "无需支付",
							icon: "none",
							duration: 2000
						});
						setTimeout(() => {
							//#ifdef H5
							if (jumpUrl) {
								window.location.href = jumpUrl;
							} else {
								window.location.reload();
							}
							//#endif
						}, 1500)
					}
				})
		});
	},
	/**
	 * 微信支付
	 * obj 传入对象
	 * url 提交地址
	 * jumpUrl 支付成功跳转 
	 */
	wechatPay(obj = {}, url = '/client/pay/wechat', jumpUrl) {
		uni.showLoading({
			title: '支付中'
		});
		return new Promise(r => {
			$http.post(url, obj)
				.then(res => {
					// 区分包月支付和普通支付
					if (res.data.needPay && !res.data.monthId) {
						//#ifdef H5
						$wxApi.JSAPI(res.data.wx, jumpUrl).then(r);
						//#endif
					} else if (res.data.monthId) {
						//#ifdef H5
						$wxApi.JSAPI(res.data.wx, jumpUrl).then(r);
						//#endif
					} else {
						uni.showToast({
							title: "无需支付",
							icon: "none",
							duration: 2000
						});
						setTimeout(() => {
							//#ifdef H5
							if (jumpUrl) {
								window.location.href = jumpUrl;
							} else {
								window.location.reload();
							}
							//#endif
						}, 1500)
					}
					this.payError(res);
				}).catch(err => {
					// alert(err.msg);
					console.log('pay err', err);
				})
		});
	},
	//支付错误处理
	payError(res) {
		uni.hideLoading();
		if (res.code == 623) {
			setTimeout(i => {
				new Vue().$api.goto("/pages/userCenter/myOrder/myOrder");
			}, 2000);
			uni.showToast({
				title: res.msg + "    即将跳转到订单页",
				icon: "none",
				duration: 2000
			});
		}
	}
}