wangguoyu vor 1 Monat
Ursprung
Commit
7e31ae2820
2 geänderte Dateien mit 457 neuen und 473 gelöschten Zeilen
  1. 59 77
      pages/mall/detailDialog.vue
  2. 398 396
      pages/mall/mallPage.vue

+ 59 - 77
pages/mall/detailDialog.vue

@@ -52,13 +52,10 @@
 					<icon class="apple-icon"></icon>apple
 				</view>
 
-				<view v-if="currentPlatform =='android'&&!disabled" class="open-svip-btn" @touchstart="creatOrder">立即支付
+				<view v-if="currentPlatform =='android'" class="open-svip-btn" @touchstart="creatOrder">立即支付
 				</view>
-				<view v-if="currentPlatform =='android'&&disabled" class="open-svip-btn-hui">立即支付</view>
-				<view v-if="currentPlatform =='ios'&&!disabled" style="margin-top: 20rpx;" class="open-svip-btn"
+				<view v-if="currentPlatform =='ios'" style="margin-top: 20rpx;" class="open-svip-btn"
 					@touchstart="creatOrderIos">立即支付</view>
-				<view v-if="currentPlatform =='ios'&&disabled" style="margin-top: 20rpx;" class="open-svip-btn-hui">立即支付
-				</view>
 			</view>
 		</view>
 	</uni-popup>
@@ -100,7 +97,6 @@
 	// 本地选中状态管理
 	const localSelectedMap = ref({});
 	let currentPlatform = ref('android')
-	let disabled = ref(false)
 	// 初始化本地数据
 	// 初始化数据
 	watch(() => props.selectedList, (newVal) => {
@@ -130,7 +126,6 @@
 
 	function genggaiVip(data) {
 		uni.hideLoading();
-		disabled.value = false
 		const localList = cacheManager.get('auth').levelIdList || []
 		const mergeList = [...new Set([...localList, ...data.levelIdList])]
 		cacheManager.updateObject('auth', {
@@ -150,7 +145,19 @@
 	}
 
 	const creatOrderIos = debounce((data => {
-		disabled.value = true
+
+
+		const selectedItems = localList.value
+			.filter(item => selectedIds.value.includes(item.id));
+		console.log('selectedItems', selectedItems);
+		const cardIds = selectedItems.map(item => item.id);
+		if (cardIds.length === 0) {
+			uni.showToast({
+				title: '请选择至少一个商品',
+				icon: 'none'
+			});
+			return;
+		}
 		uni.showLoading({
 			title: '',
 			mask: true
@@ -164,34 +171,28 @@
 				productId.value = 'llisoftEzhuangyuanYingyu'
 			}
 		}
-		if (orderId.value) {
-			uni.hideLoading();
-			applePay()
-		} else {
-			let req = {
-				cardId: cardId.value
-			}
-			orderAdd(req).then(res => {
-				console.log('res', res);
-				if (res.code == 0) {
-					uni.hideLoading();
-					orderId.value = res.data.id
-					// 测试ios 1元
-					applePay()
-				} else {
-					uni.hideLoading();
-					//disabled.value = false
-					return false
-					console.log('请求失败');
-				}
-			}).catch((e) => {
+		let req = {
+			cardIds: cardIds
+		}
+		orderAdd(req).then(res => {
+			console.log('res', res);
+			if (res.code == 0) {
+				uni.hideLoading();
+				orderId.value = res.data.id
+				// 测试ios 1元
+				applePay()
+			} else {
 				uni.hideLoading();
-				disabled.value = false
-				toast("订单创建失败")
 				return false
+				console.log('请求失败');
+			}
+		}).catch((e) => {
+			uni.hideLoading();
+			toast("订单创建失败")
+			return false
+
+		})
 
-			})
-		}
 
 	}), 500)
 
@@ -212,7 +213,6 @@
 				console.log('resiapChanneliapChanneliapChannel', res);
 				genggaiVip()
 			} else {
-				//disabled.value = false
 				iapChannel.finishTransaction(data.transactionIdentifier)
 				uni.hideLoading();
 				toast("苹果内购失败")
@@ -265,7 +265,6 @@
 											//支付成功回调,前端调用后台接口
 										},
 										fail: (e) => {
-											//	disabled.value = false
 											uni.hideLoading();
 											toast("苹果内购失败")
 											console.info("苹果内购失败", e)
@@ -291,7 +290,6 @@
 				content: e.message,
 				showCancel: false
 			});
-			//	disabled.value = false
 		} finally {
 			uni.hideLoading();
 		}
@@ -371,7 +369,6 @@
 			});
 		}).catch((error) => {
 			uni.hideLoading();
-			//	disabled.value = false
 
 			console.log(error);
 		})
@@ -408,7 +405,6 @@
 										0) {
 										genggaiVip(res4.data)
 									} else {
-										//	disabled.value =false
 										toast(
 											"开通失败,请联系管理员!"
 										)
@@ -417,7 +413,6 @@
 										return false
 									}
 								}).catch(() => {
-									//	disabled.value =false
 									uni.hideLoading();
 									toast("check接口报错")
 									return false
@@ -425,15 +420,12 @@
 							}, 5000)
 						}
 					}).catch(() => {
-						//	disabled.value = false
 						uni.hideLoading();
 						toast("check接口报错")
 						return false
 					})
 				},
 				fail: function(err) {
-					//	disabled.value = false
-					//  toast('支付失败:' + JSON.stringify(err));
 					console.log('支付失败:' + JSON.stringify(err));
 					uni.hideLoading();
 				}
@@ -455,50 +447,40 @@
 			return;
 		}
 		console.log('123123123123');
-
-		disabled.value = true
 		uni.showLoading({
 			title: '',
 			mask: true
 		});
 		if (payType.value == 'weixin') {
 			console.log('创建订单11');
-			if (orderId.value) {
-				wxPay()
-			} else {
-				let req = {
-					cardIds: cardIds
-				}
-				orderAdd(req).then(res => {
-					console.log('res', res);
-					console.log(' res.data.id', res.data.id);
-					orderId.value = res.data.id
-					wxPay()
-				}).catch((err) => {
-					uni.hideLoading();
-					disabled.value = false
-					toast("订单创建失败")
-					return false
-				})
+			let req = {
+				cardIds: cardIds
 			}
+			orderAdd(req).then(res => {
+				console.log('res', res);
+				console.log(' res.data.id', res.data.id);
+				orderId.value = res.data.id
+				wxPay()
+			}).catch((err) => {
+				uni.hideLoading();
+				toast("订单创建失败")
+				return false
+			})
+
 		} else {
-			if (orderId.value) {
-				aliApy()
-			} else {
-				let req = {
-					cardIds: cardIds
-				}
-				orderAdd(req).then(res => {
-					console.log('res', res);
-					orderId.value = res.data.id
-					aliApy()
-				}).catch((err) => {
-					disabled.value = false
-					uni.hideLoading();
-					toast("订单创建失败")
-					return false
-				})
+			let req = {
+				cardIds: cardIds
 			}
+			orderAdd(req).then(res => {
+				console.log('res', res);
+				orderId.value = res.data.id
+				aliApy()
+			}).catch((err) => {
+				uni.hideLoading();
+				toast("订单创建失败")
+				return false
+			})
+
 		}
 
 	}, 500)

+ 398 - 396
pages/mall/mallPage.vue

@@ -68,13 +68,10 @@
 				<icon class="apple-icon"></icon>apple
 			</view>
 
-			<view v-if="currentPlatform =='android'&&!disabled" class="open-svip-btn" @touchstart="creatOrder">立即支付
+			<view v-if="currentPlatform =='android'" class="open-svip-btn" @touchstart="creatOrder">立即支付
 			</view>
-			<view v-if="currentPlatform =='android'&&disabled" class="open-svip-btn-hui">立即支付</view>
-			<view v-if="currentPlatform =='ios'&&!disabled" style="margin-top: 20rpx;" class="open-svip-btn"
+			<view v-if="currentPlatform =='ios'" style="margin-top: 20rpx;" class="open-svip-btn"
 				@touchstart="creatOrderIos">立即支付</view>
-			<view v-if="currentPlatform =='ios'&&disabled" style="margin-top: 20rpx;" class="open-svip-btn-hui">立即支付
-			</view>
 		</view>
 		<detail-dialog ref="mallDetailPopup" :selected-list="getSelectedProducts"></detail-dialog>
 
@@ -92,19 +89,19 @@
 	} from "vue";
 	import {
 		getMallist
-	} from "@/api/productMall.js";
-	import {
-		orderAdd,
-		orderPayAli,
-		orderPayWx,
-		orderPayApple,
-		orderCheck
+	} from "@/api/productMall.js";
+	import {
+		orderAdd,
+		orderPayAli,
+		orderPayWx,
+		orderPayApple,
+		orderCheck
 	} from "@/api/order.js"
 	import {
 		onLoad
 	} from "@dcloudio/uni-app";
 	import {
-		toast,
+		toast,
 		debounce,
 		getUserIdentity
 	} from "@/utils/common";
@@ -127,13 +124,12 @@
 		selectedIds: [] // 新增选中状态存储
 	})
 	let currentPlatform = ref('android')
-	let disabled = ref(false)
-	const payType = ref('weixin');
-	let orderId = ref('');
-	let productId = ref(null)
-	let iapChannel = ref(null)
-	let quantity = ref(1)
-	let channel = ref('')
+	const payType = ref('weixin');
+	let orderId = ref('');
+	let productId = ref(null)
+	let iapChannel = ref(null)
+	let quantity = ref(1)
+	let channel = ref('')
 	let appleFlag = ref('')
 	const totalPrice = computed(() => {
 		return productData.list
@@ -144,6 +140,7 @@
 	const getSelectedProducts = computed(() => {
 		return productData.list.filter(item => productData.selectedIds.includes(item.id));
 	});
+
 	function switchPayWay() {
 		payType.value = payType.value == 'weixin' ? 'zhifubao' : 'weixin'
 	}
@@ -153,6 +150,21 @@
 	}
 
 	function detailBtn() {
+
+
+		// // 获取选中商品的cardId列表
+		// const selectedProducts = productData.list.filter(
+		// 	item => productData.selectedIds.includes(item.id)
+		// );
+
+		// const cardIds = selectedProducts.map(item => item.id);
+		// console.log('cardIds', cardIds);
+
+		if (productData.selectedIds.length === 0) {
+			toast("请选择至少一个商品查看明细");
+			return;
+		}
+
 		showDetail.value = !showDetail.value;
 		if (showDetail.value) {
 			mxjtClass.value = 'mxjt-zk-icon';
@@ -175,380 +187,370 @@
 			return currentPlatform.value = 'android'
 		}
 
-	}
-	function genggaiVip(data) {
-		uni.hideLoading();
-		disabled.value = false
-		const localList = cacheManager.get('auth').levelIdList || []
-		const mergeList = [...new Set([...localList, ...data.levelIdList])]
-		cacheManager.updateObject('auth', {
-			levelIdList: mergeList
-		})
-		toast("chenggong!!!! 之后跳转我的订单页面")
-	
-		// if (formPage.value == 'my') {
-		// 	uni.redirectTo({
-		// 		url: '/pages/my/index'
-		// 	})
-		// } else {
-		// 	uni.redirectTo({
-		// 		url: '/pages/study/index'
-		// 	})
-		// }
-	}
-	
-	const creatOrderIos = debounce((data => {
-		disabled.value = true
-		uni.showLoading({
-			title: '',
-			mask: true
-		});
-		if (appleFlag.value.toString() == 'true') {
-			productId.value = 'llisoftEzhuangyuanceshi'
-		} else {
-			if (cardId.value == 1) {
-				productId.value = 'llisoftEzhuangyuan'
-			} else {
-				productId.value = 'llisoftEzhuangyuanYingyu'
-			}
-		}
-		if (orderId.value) {
-			uni.hideLoading();
-			applePay()
-		} else {
-			let req = {
-				cardId: cardId.value
-			}
-			orderAdd(req).then(res => {
-				console.log('res', res);
-				if (res.code == 0) {
-					uni.hideLoading();
-					orderId.value = res.data.id
-					// 测试ios 1元
-					applePay()
-				} else {
-					uni.hideLoading();
-					//disabled.value = false
-					return false
-					console.log('请求失败');
-				}
-			}).catch((e) => {
-				uni.hideLoading();
-				disabled.value = false
-				toast("订单创建失败")
-				return false
-	
-			})
-		}
-	
-	}), 500)
-	
-	function applePaySuccess(data) {
-		uni.showLoading({
-			title: '会员开通中',
-			mask: true
-		});
-		let req = {
-			"id": orderId.value,
-			"paynum": data.transactionIdentifier,
-			"receipt": data.transactionReceipt
-		}
-		console.log('reqreq', req);
-		orderPayApple(req).then(res => {
-			if (res.code == 0 && res.data) {
-				iapChannel.finishTransaction(data.transactionIdentifier)
-				console.log('resiapChanneliapChanneliapChannel', res);
-				genggaiVip()
-			} else {
-				//disabled.value = false
-				iapChannel.finishTransaction(data.transactionIdentifier)
-				uni.hideLoading();
-				toast("苹果内购失败")
-				console.log('orderPayApple失败');
-				return false
-			}
-		})
-	}
-	
-	function applePay() {
-		console.log('123123');
-		if (!productId.value) {
-			uni.showToast({
-				title: '苹果内购ID缺失,请选择其它支付方式或联系客服',
-				icon: "none"
-			});
-			return false;
-		}
-		uni.showLoading({
-			title: '正在支付中...'
-		});
-		try {
-			plus.payment.getChannels(function(channels) { //判读项目支付通道开通情况
-					for (var i in channels) {
-						iapChannel = channels[i];
-						// 获取 id 为 'appleiap' 的 channel  
-						console.info("支付通道", iapChannel)
-						if (iapChannel.id === 'appleiap') { //开通了app应用内支付,在manifest.josn中设置,开通后需打自定议基座
-							console.info("苹果支付通道", iapChannel)
-							// ids 数组中的项为 App Store Connect 配置的内购买项目产品ID(productId)
-							var ids = [productId.value];
-							// iap 为应用内支付对象 
-							iapChannel.requestOrder(ids, function(e) {
-									// 获取订单信息成功回调方法  
-									console.log('requestOrder success: ' + JSON.stringify(e));
-									uni.requestPayment({
-										provider: 'appleiap',
-										orderInfo: {
-											productid: productId.value, //产品id,来自于苹果
-											quantity: quantity.value, //产品数量
-											manualFinishTransaction: true
-										},
-										success: (e) => {
-											uni.hideLoading();
-	
-											//	toast("苹果内购成功")
-											console.info("苹果内购成功", e)
-											applePaySuccess(e)
-											//e.payment.orderNo = that.orderNo
-											//支付成功回调,前端调用后台接口
-										},
-										fail: (e) => {
-											//	disabled.value = false
-											uni.hideLoading();
-											toast("苹果内购失败")
-											console.info("苹果内购失败", e)
-										},
-									})
-								},
-								function(e) {
-									// 获取订单信息失败回调方法  
-									console.log('requestOrder failed: ' + JSON.stringify(e));
-								});
-						} else {
-							console.log('不支持苹果支付')
-						}
-					}
-				},
-				function(e) {
-					console.log("获取iap支付通道失败:" + e.message);
-				});
-	
-		} catch (e) {
-			uni.showModal({
-				title: "init",
-				content: e.message,
-				showCancel: false
-			});
-			//	disabled.value = false
-		} finally {
-			uni.hideLoading();
-		}
-	
-	
-	
-	}
-	
-	
-	function wxPay() {
-		orderPayWx({
-			id: orderId.value
-		}).then(res2 => {
-			uni.hideLoading();
-			console.log('res2', res2);
-			uni.requestPayment({
-				"provider": "wxpay",
-				"orderInfo": {
-					"appid": res2.data.appid, // 应用ID(AppID)
-					"partnerid": res2.data.partnerId, // 商户号(PartnerID)
-					"prepayid": res2.data.prepayId, // 预支付交易会话ID
-					"package": res2.data.packageVal, // 固定值
-					"noncestr": res2.data.nonceStr, // 随机字符串
-					"timestamp": res2.data.timestamp, // 时间戳(单位:秒)
-					"sign": res2.data.sign // 签名,这里用的 MD5 签名
-				}, //此处为服务器返回的订单信息字符串
-				success: function(res) {
-	
-					//var rawdata = JSON.parse(res.rawdata);
-					//	console.log('res',res);	
-					//	console.log('支付成功');
-					//	console.log('rawdata', rawdata);
-					uni.showLoading({
-						title: '会员开通中,请稍后...'
-					});
-					orderCheck({
-						id: orderId.value
-					}).then(res3 => {
-						console.log('res3', res3);
-						if (res3.code == 0) {
-	
-							genggaiVip(res3.data)
-						} else {
-							setTimeout(() => {
-								orderCheck({
-									id: orderId.value
-								}).then(res4 => {
-									if (res4.code == 0) {
-										genggaiVip(res4.data)
-									} else {
-										toast(
-											"开通失败,请联系管理员!"
-										)
-										uni
-											.hideLoading();
-										return false
-									}
-								}).catch(() => {
-									uni.hideLoading();
-									toast("check接口报错")
-									return false
-								})
-							}, 5000)
-						}
-					}).catch(() => {
-						uni.hideLoading();
-						toast("check接口报错")
-						return false
-					})
-	
-				},
-				fail: function(err) {
-					uni.hideLoading();
-					//  toast('支付失败:' + JSON.stringify(err));
-					console.log('支付失败:' + JSON.stringify(err));
-				}
-			});
-		}).catch((error) => {
-			uni.hideLoading();
-			//	disabled.value = false
-	
-			console.log(error);
-		})
-	}
-	
-	function aliApy() {
-		orderPayAli({
-			id: orderId.value
-		}).then(res2 => {
-			console.log('res2', res2);
-			uni.hideLoading();
-			uni.requestPayment({
-				"provider": "alipay",
-				"orderInfo": res2.data.text, //此处为服务器返回的订单信息字符串
-				success: function(res) {
-					// var rawdata = JSON.parse(res.rawdata);
-					// console.log('支付成功');
-					// console.log('rawdata', rawdata);
-	
-					uni.showLoading({
-						title: '会员开通中,请稍后...'
-					});
-					orderCheck({
-						id: orderId.value
-					}).then(res3 => {
-						if (res3.code == 0) {
-							genggaiVip(res3.data)
-						} else {
-							setTimeout(() => {
-								orderCheck({
-									id: orderId.value
-								}).then(res4 => {
-									if (res4.code ==
-										0) {
-										genggaiVip(res4.data)
-									} else {
-										//	disabled.value =false
-										toast(
-											"开通失败,请联系管理员!"
-										)
-										uni
-											.hideLoading();
-										return false
-									}
-								}).catch(() => {
-									//	disabled.value =false
-									uni.hideLoading();
-									toast("check接口报错")
-									return false
-								})
-							}, 5000)
-						}
-					}).catch(() => {
-						//	disabled.value = false
-						uni.hideLoading();
-						toast("check接口报错")
-						return false
-					})
-				},
-				fail: function(err) {
-					//	disabled.value = false
-					//  toast('支付失败:' + JSON.stringify(err));
-					console.log('支付失败:' + JSON.stringify(err));
-					uni.hideLoading();
-				}
-			});
-		})
-	}
-	
-	const creatOrder = debounce((data) => {
-	
-		if (productData.selectedIds.length === 0) {
-			toast("请选择至少一个商品");
-			return;
-		}
-		// 获取选中商品的cardId列表
-		const selectedProducts = productData.list.filter(
-			item => productData.selectedIds.includes(item.id)
-		);
-		
-		const cardIds = selectedProducts.map(item => item.id);
-		console.log('cardIds', cardIds);
-	
-		disabled.value = true
-		uni.showLoading({
-			title: '',
-			mask: true
-		});
-		if (payType.value == 'weixin') {
-			console.log('创建订单11');
-			if (orderId.value) {
-				wxPay()
-			} else {
-				let req = {
-					cardIds: cardIds
-				}
-				orderAdd(req).then(res => {
-					console.log('res', res);
-					console.log(' res.data.id', res.data.id);
-					orderId.value = res.data.id
-					wxPay()
-				}).catch((err) => {
-					uni.hideLoading();
-					disabled.value = false
-					toast("订单创建失败")
-					return false
-				})
-			}
-		} else {
-			if (orderId.value) {
-				aliApy()
-			} else {
-				let req = {
-					cardIds: cardIds
-				}
-				orderAdd(req).then(res => {
-					console.log('res', res);
-					orderId.value = res.data.id
-					aliApy()
-				}).catch((err) => {
-					disabled.value = false
-					uni.hideLoading();
-					toast("订单创建失败")
-					return false
-				})
-			}
-		}
-	
+	}
+
+	function genggaiVip(data) {
+		uni.hideLoading();
+		const localList = cacheManager.get('auth').levelIdList || []
+		const mergeList = [...new Set([...localList, ...data.levelIdList])]
+		cacheManager.updateObject('auth', {
+			levelIdList: mergeList
+		})
+		toast("chenggong!!!! 之后跳转我的订单页面")
+
+		// if (formPage.value == 'my') {
+		// 	uni.redirectTo({
+		// 		url: '/pages/my/index'
+		// 	})
+		// } else {
+		// 	uni.redirectTo({
+		// 		url: '/pages/study/index'
+		// 	})
+		// }
+	}
+
+	const creatOrderIos = debounce((data => {
+		if (productData.selectedIds.length === 0) {
+			toast("请选择至少一个商品");
+			return;
+		}
+		const selectedProducts = productData.list.filter(
+			item => productData.selectedIds.includes(item.id)
+		);
+
+		const cardIds = selectedProducts.map(item => item.id);
+		console.log('cardIds', cardIds);
+		uni.showLoading({
+			title: '',
+			mask: true
+		});
+		if (appleFlag.value.toString() == 'true') {
+			productId.value = 'llisoftEzhuangyuanceshi'
+		} else {
+			if (cardId.value == 1) {
+				productId.value = 'llisoftEzhuangyuan'
+			} else {
+				productId.value = 'llisoftEzhuangyuanYingyu'
+			}
+		}
+		let req = {
+			cardIds: cardIds
+		}
+		orderAdd(req).then(res => {
+			console.log('res', res);
+			if (res.code == 0) {
+				uni.hideLoading();
+				orderId.value = res.data.id
+				// 测试ios 1元
+				applePay()
+			} else {
+				uni.hideLoading();
+
+				return false
+				console.log('请求失败');
+			}
+		}).catch((e) => {
+			uni.hideLoading();
+
+			toast("订单创建失败")
+			return false
+
+		})
+
+
+	}), 500)
+
+	function applePaySuccess(data) {
+		uni.showLoading({
+			title: '会员开通中',
+			mask: true
+		});
+		let req = {
+			"id": orderId.value,
+			"paynum": data.transactionIdentifier,
+			"receipt": data.transactionReceipt
+		}
+		console.log('reqreq', req);
+		orderPayApple(req).then(res => {
+			if (res.code == 0 && res.data) {
+				iapChannel.finishTransaction(data.transactionIdentifier)
+				console.log('resiapChanneliapChanneliapChannel', res);
+				genggaiVip()
+			} else {
+
+				iapChannel.finishTransaction(data.transactionIdentifier)
+				uni.hideLoading();
+				toast("苹果内购失败")
+				console.log('orderPayApple失败');
+				return false
+			}
+		})
+	}
+
+	function applePay() {
+		console.log('123123');
+		if (!productId.value) {
+			uni.showToast({
+				title: '苹果内购ID缺失,请选择其它支付方式或联系客服',
+				icon: "none"
+			});
+			return false;
+		}
+		uni.showLoading({
+			title: '正在支付中...'
+		});
+		try {
+			plus.payment.getChannels(function(channels) { //判读项目支付通道开通情况
+					for (var i in channels) {
+						iapChannel = channels[i];
+						// 获取 id 为 'appleiap' 的 channel  
+						console.info("支付通道", iapChannel)
+						if (iapChannel.id === 'appleiap') { //开通了app应用内支付,在manifest.josn中设置,开通后需打自定议基座
+							console.info("苹果支付通道", iapChannel)
+							// ids 数组中的项为 App Store Connect 配置的内购买项目产品ID(productId)
+							var ids = [productId.value];
+							// iap 为应用内支付对象 
+							iapChannel.requestOrder(ids, function(e) {
+									// 获取订单信息成功回调方法  
+									console.log('requestOrder success: ' + JSON.stringify(e));
+									uni.requestPayment({
+										provider: 'appleiap',
+										orderInfo: {
+											productid: productId.value, //产品id,来自于苹果
+											quantity: quantity.value, //产品数量
+											manualFinishTransaction: true
+										},
+										success: (e) => {
+											uni.hideLoading();
+
+											//	toast("苹果内购成功")
+											console.info("苹果内购成功", e)
+											applePaySuccess(e)
+											//e.payment.orderNo = that.orderNo
+											//支付成功回调,前端调用后台接口
+										},
+										fail: (e) => {
+											uni.hideLoading();
+											toast("苹果内购失败")
+											console.info("苹果内购失败", e)
+										},
+									})
+								},
+								function(e) {
+									// 获取订单信息失败回调方法  
+									console.log('requestOrder failed: ' + JSON.stringify(e));
+								});
+						} else {
+							console.log('不支持苹果支付')
+						}
+					}
+				},
+				function(e) {
+					console.log("获取iap支付通道失败:" + e.message);
+				});
+
+		} catch (e) {
+			uni.showModal({
+				title: "init",
+				content: e.message,
+				showCancel: false
+			});
+		} finally {
+			uni.hideLoading();
+		}
+
+
+
+	}
+
+
+	function wxPay() {
+		orderPayWx({
+			id: orderId.value
+		}).then(res2 => {
+			uni.hideLoading();
+			console.log('res2', res2);
+			uni.requestPayment({
+				"provider": "wxpay",
+				"orderInfo": {
+					"appid": res2.data.appid, // 应用ID(AppID)
+					"partnerid": res2.data.partnerId, // 商户号(PartnerID)
+					"prepayid": res2.data.prepayId, // 预支付交易会话ID
+					"package": res2.data.packageVal, // 固定值
+					"noncestr": res2.data.nonceStr, // 随机字符串
+					"timestamp": res2.data.timestamp, // 时间戳(单位:秒)
+					"sign": res2.data.sign // 签名,这里用的 MD5 签名
+				}, //此处为服务器返回的订单信息字符串
+				success: function(res) {
+
+					//var rawdata = JSON.parse(res.rawdata);
+					//	console.log('res',res);	
+					//	console.log('支付成功');
+					//	console.log('rawdata', rawdata);
+					uni.showLoading({
+						title: '会员开通中,请稍后...'
+					});
+					orderCheck({
+						id: orderId.value
+					}).then(res3 => {
+						console.log('res3', res3);
+						if (res3.code == 0) {
+
+							genggaiVip(res3.data)
+						} else {
+							setTimeout(() => {
+								orderCheck({
+									id: orderId.value
+								}).then(res4 => {
+									if (res4.code == 0) {
+										genggaiVip(res4.data)
+									} else {
+										toast(
+											"开通失败,请联系管理员!"
+										)
+										uni
+											.hideLoading();
+										return false
+									}
+								}).catch(() => {
+									uni.hideLoading();
+									toast("check接口报错")
+									return false
+								})
+							}, 5000)
+						}
+					}).catch(() => {
+						uni.hideLoading();
+						toast("check接口报错")
+						return false
+					})
+
+				},
+				fail: function(err) {
+					uni.hideLoading();
+					//  toast('支付失败:' + JSON.stringify(err));
+					console.log('支付失败:' + JSON.stringify(err));
+				}
+			});
+		}).catch((error) => {
+			uni.hideLoading();
+
+			console.log(error);
+		})
+	}
+
+	function aliApy() {
+		orderPayAli({
+			id: orderId.value
+		}).then(res2 => {
+			console.log('res2', res2);
+			uni.hideLoading();
+			uni.requestPayment({
+				"provider": "alipay",
+				"orderInfo": res2.data.text, //此处为服务器返回的订单信息字符串
+				success: function(res) {
+					// var rawdata = JSON.parse(res.rawdata);
+					// console.log('支付成功');
+					// console.log('rawdata', rawdata);
+
+					uni.showLoading({
+						title: '会员开通中,请稍后...'
+					});
+					orderCheck({
+						id: orderId.value
+					}).then(res3 => {
+						if (res3.code == 0) {
+							genggaiVip(res3.data)
+						} else {
+							setTimeout(() => {
+								orderCheck({
+									id: orderId.value
+								}).then(res4 => {
+									if (res4.code ==
+										0) {
+										genggaiVip(res4.data)
+									} else {
+										toast(
+											"开通失败,请联系管理员!"
+										)
+										uni
+											.hideLoading();
+										return false
+									}
+								}).catch(() => {
+									uni.hideLoading();
+									toast("check接口报错")
+									return false
+								})
+							}, 5000)
+						}
+					}).catch(() => {
+						uni.hideLoading();
+						toast("check接口报错")
+						return false
+					})
+				},
+				fail: function(err) {
+					console.log('支付失败:' + JSON.stringify(err));
+					uni.hideLoading();
+				}
+			});
+		})
+	}
+
+	const creatOrder = debounce((data) => {
+
+		if (productData.selectedIds.length === 0) {
+			toast("请选择至少一个商品");
+			return;
+		}
+		// 获取选中商品的cardId列表
+		const selectedProducts = productData.list.filter(
+			item => productData.selectedIds.includes(item.id)
+		);
+
+		const cardIds = selectedProducts.map(item => item.id);
+		console.log('cardIds', cardIds);
+
+		uni.showLoading({
+			title: '',
+			mask: true
+		});
+		if (payType.value == 'weixin') {
+			console.log('创建订单11');
+			let req = {
+				cardIds: cardIds
+			}
+			orderAdd(req).then(res => {
+				console.log('res', res);
+				console.log(' res.data.id', res.data.id);
+				orderId.value = res.data.id
+				wxPay()
+			}).catch((err) => {
+				uni.hideLoading();
+				toast("订单创建失败")
+				return false
+			})
+
+		} else {
+
+			let req = {
+				cardIds: cardIds
+			}
+			orderAdd(req).then(res => {
+				console.log('res', res);
+				orderId.value = res.data.id
+				aliApy()
+			}).catch((err) => {
+				uni.hideLoading();
+				toast("订单创建失败")
+				return false
+			})
+
+		}
+
 	}, 500)
+
 	function onChangeTab(e) {
 		console.log('e', e);
 		productData.current = e.currentIndex
@@ -631,10 +633,10 @@
 			productData.from = options.from
 		} else {
 			productData.current = Number(cacheManager.get('auth').subjectId) - 1
-		}
+		}
 		//isIOSorAndroid()
-		getMore();
-		
+		getMore();
+
 	})
 </script>