916 lines
23 KiB
Vue
916 lines
23 KiB
Vue
<!-- 会员中心 -->
|
||
<template>
|
||
<view>
|
||
<view class="margin-top margin-lr radius u-relative"
|
||
style="overflow: hidden;height: 260rpx;border-radius: 40rpx;">
|
||
<u-image src="../../../static/images/me/beijing@2x.png" width="100%" height="400rpx"></u-image>
|
||
<view class="u-abso margin" style="top: 0;">
|
||
<view class="text-bold u-font-40">{{userName}}</view>
|
||
<view class="margin-top-sm" style="color: #604320;" v-if="!isVIP">购买会员所有资源免费看</view>
|
||
<view class="margin-top-sm" style="color: #604320;" v-else>会员到期:{{vipData}}</view>
|
||
</view>
|
||
</view>
|
||
<view class="margin-lr padding bg-white"
|
||
style="border-radius: 40rpx;position: relative;top: -80rpx;color: #000;">
|
||
<view class="u-font-16 text-bold margin-bottom">开通会员</view>
|
||
<view class="flex justify-between margin-bottom" v-for="(item, index) in VIPlist" :key="index">
|
||
<view>
|
||
<view class="u-font-40">
|
||
{{item.money}}<text style="font-size: 22rpx;margin-right: 16rpx;">金币</text>
|
||
<!-- #ifdef MP-TOUTIAO -->
|
||
/ {{item.payDiamond}}<text style="font-size: 22rpx;">钻石</text>
|
||
<!-- #endif -->
|
||
</view>
|
||
<view class="" style="color: #7F8299;">{{item.type}}卡 •
|
||
{{item.money}}金币/
|
||
<!-- #ifdef MP-TOUTIAO -->
|
||
{{item.payDiamond}}钻石/
|
||
<!-- #endif -->
|
||
{{item.type}}/{{item.vipNameType==0?'30天':(item.vipNameType==1?'90天':'365天')}}
|
||
</view>
|
||
</view>
|
||
<view>
|
||
<view class="btn-bgDEghTTorsp" @click="bugVIPDEghTTorsp(item.id)">购买</view>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
<view class="illustrateDEghTTorsp flex align-center justify-center">
|
||
<view class="illustrateDEghTTorsp-box flex align-center">
|
||
<u-checkbox active-color="#ff7581" v-model="checked" shape="circle"></u-checkbox>
|
||
<text @click="checked = !checked">
|
||
我已经阅读并同意
|
||
</text>
|
||
<view @click="goXieyiDEghTTorsp()" class="illustrateDEghTTorsp-box-txt">
|
||
《付费须知说明》
|
||
</view>
|
||
</view>
|
||
</view>
|
||
|
||
<u-popup v-model="showPay" mode="bottom" border-radius="14" :closeable="true">
|
||
<view
|
||
style="width: 100%;text-align: center;font-size:38rpx;font-weight: bold;margin-top:15rpx;margin-bottom: 80rpx;">
|
||
选择支付方式
|
||
</view>
|
||
<view @click="goMoneyDEghTTorsp" class="flex align-center justify-end" style="margin-right: 20rpx;color: #ff7581;">
|
||
<view class="" style="color: #666666;">
|
||
金币不足?
|
||
</view>
|
||
去充值
|
||
</view>
|
||
<view style="display: flex;height: 100upx;align-items: center;padding: 20upx 30rpx;"
|
||
v-for="(item,index) in openLists" :key='index' @tap='selectWayDEghTTorsp(item.id)'>
|
||
<view style="display: flex;width:80%;align-items: center;">
|
||
<image :src="item.image" style="width: 55upx;height: 55upx;"></image>
|
||
<view style="font-size: 30upx;margin-left: 20upx;width: 70%;">{{item.text}}
|
||
</view>
|
||
</view>
|
||
<view style="width: 20%;display: flex;justify-content: flex-end;">
|
||
<radio-group name="openWay" style="margin-left: 20upx;">
|
||
<label class="tui-radio">
|
||
<radio color="#ff7581" :checked="openWay === item.id ? true : false" />
|
||
</label>
|
||
</radio-group>
|
||
</view>
|
||
</view>
|
||
<view
|
||
style="width: 690rpx;height: 80rpx;background:#ff7581;color:#FFFFFF;text-align: center;line-height: 80rpx;border-radius: 50rpx;margin: 30rpx;"
|
||
@tap="payDEghTTorsp()">确认支付</view>
|
||
</u-popup>
|
||
|
||
<!-- 会员助力 -->
|
||
<u-popup v-model="showjl" :closeable="true" close-icon-color="#ffffff" mode="center">
|
||
<view class="zlDEghTTorsp" @click="goZlDEghTTorsp()">
|
||
<image class="zlDEghTTorsp-bg"
|
||
src="https://dj-api.hnsiyao.cn/file/uploadPath/2023/12/14/adf37beca97826d44970d20118f88e29.png"
|
||
mode=""></image>
|
||
<view class="zlDEghTTorsp-title">
|
||
会员免费领
|
||
</view>
|
||
<view class="zlDEghTTorsp-titlef">
|
||
免费领会员
|
||
</view>
|
||
<view class="zlDEghTTorsp-titlef2">
|
||
助力中...
|
||
</view>
|
||
<view class="zlDEghTTorsp-titlebtn">
|
||
立即领取
|
||
</view>
|
||
</view>
|
||
</u-popup>
|
||
<u-toast ref="uToast" />
|
||
<!-- 抖音im客服 -->
|
||
<ttMsg />
|
||
</view>
|
||
</template>
|
||
|
||
<script>
|
||
import ttMsg from '../../../components/ttMsg/ttMsg.vue'
|
||
export default {
|
||
components: {
|
||
ttMsg
|
||
},
|
||
data() {
|
||
return {
|
||
userName: '匿名',
|
||
VIPlist: '',
|
||
showPay: false,
|
||
openWay: 0,
|
||
openLists: [],
|
||
vipId: '',
|
||
vipData: '',
|
||
isVIP: false,
|
||
showjl: false,
|
||
checked: false,
|
||
osName: ''
|
||
}
|
||
},
|
||
onLoad() {
|
||
// #ifdef MP-WEIXIN || MP-TOUTIAO || MP-KUAISHOU
|
||
this.osName = uni.getSystemInfoSync().osName;
|
||
// #endif
|
||
|
||
// #ifdef APP
|
||
if (plus.os.name.toLowerCase() === 'android') {
|
||
this.openLists = [{
|
||
image: '/static/images/pay/weixin.png',
|
||
text: '微信',
|
||
id: 1
|
||
}, {
|
||
image: '/static/images/pay/zhifubao.png',
|
||
text: '支付宝',
|
||
id: 2
|
||
}, {
|
||
image: '/static/images/pay/lingqian.png',
|
||
text: '金币支付',
|
||
id: 3
|
||
}]
|
||
this.openWay = 1;
|
||
} else {
|
||
let checkIosPay = this.$queue.getData('checkIosPay');
|
||
if (checkIosPay === '是') {
|
||
this.openLists = [{
|
||
image: '/static/images/pay/lingqian.png',
|
||
text: '金币支付',
|
||
id: 3
|
||
}];
|
||
this.openWay = 3;
|
||
} else {
|
||
this.openLists = [{
|
||
image: '/static/images/pay/weixin.png',
|
||
text: '微信',
|
||
id: 1
|
||
}, {
|
||
image: '/static/images/pay/zhifubao.png',
|
||
text: '支付宝',
|
||
id: 2
|
||
}, {
|
||
image: '/static/images/pay/lingqian.png',
|
||
text: '金币支付',
|
||
id: 3
|
||
}];
|
||
this.openWay = 1;
|
||
}
|
||
}
|
||
|
||
// #endif
|
||
|
||
// #ifdef MP-WEIXIN
|
||
this.openLists = [
|
||
// {
|
||
// image: '/static/images/pay/weixin.png',
|
||
// text: '微信',
|
||
// id: 1
|
||
// },
|
||
{
|
||
image: '/static/images/pay/lingqian.png',
|
||
text: '金币支付',
|
||
id: 3
|
||
}
|
||
],
|
||
this.openWay = 3;
|
||
// #endif
|
||
|
||
// #ifdef H5
|
||
let ua = navigator.userAgent.toLowerCase();
|
||
if (ua.indexOf('micromessenger') !== -1) {
|
||
this.openLists = [{
|
||
image: '/static/images/pay/weixin.png',
|
||
text: '微信',
|
||
id: 1
|
||
}, {
|
||
image: '/static/images/pay/lingqian.png',
|
||
text: '金币支付',
|
||
id: 3
|
||
}],
|
||
this.openWay = 1;
|
||
} else {
|
||
this.openLists = [{
|
||
image: '/static/images/pay/zhifubao.png',
|
||
text: '支付宝',
|
||
id: 2
|
||
}, {
|
||
image: '/static/images/pay/lingqian.png',
|
||
text: '金币支付',
|
||
id: 3
|
||
}],
|
||
this.openWay = 2;
|
||
}
|
||
|
||
// #endif
|
||
// #ifdef MP-TOUTIAO
|
||
this.openLists = [{
|
||
image: '/static/images/pay/zhifubao.png',
|
||
text: '抖音支付',
|
||
id: 4
|
||
}, {
|
||
image: '/static/images/pay/lingqian.png',
|
||
text: '金币支付',
|
||
id: 3
|
||
}]
|
||
this.openWay = 4;
|
||
// #endif
|
||
// #ifdef MP-KUAISHOU
|
||
if (this.osName != 'ios') { //安卓
|
||
this.openLists = [{
|
||
image: '/static/images/pay/zhifubao.png',
|
||
text: '快手支付',
|
||
id: 5
|
||
}, {
|
||
image: '/static/images/pay/lingqian.png',
|
||
text: '金币支付',
|
||
id: 3
|
||
}]
|
||
this.openWay = 5
|
||
} else {
|
||
this.openLists = [{
|
||
image: '/static/images/pay/lingqian.png',
|
||
text: '金币支付',
|
||
id: 3
|
||
}]
|
||
this.openWay = 3
|
||
}
|
||
// #endif
|
||
if (uni.getStorageSync('token')) {
|
||
this.$Request.get('/app/common/type/813').then(res => {
|
||
if (res.code == 0 && res.data.value) {
|
||
if (res.data.value == '是') {
|
||
this.getActivityDEghTTorsp()
|
||
}
|
||
}
|
||
})
|
||
}
|
||
|
||
this.userName = uni.getStorageSync('userName')
|
||
this.getVIPDetDEghTTorsp()
|
||
this.getvipdataDEghTTorsp()
|
||
},
|
||
methods: {
|
||
//去付费须知说明
|
||
goXieyiDEghTTorsp() {
|
||
uni.navigateTo({
|
||
url: '/me/setting/payXieYi'
|
||
})
|
||
},
|
||
goMoneyDEghTTorsp() {
|
||
uni.navigateTo({
|
||
url: '/me/wallet/wallet'
|
||
})
|
||
},
|
||
// 获取活动等级
|
||
getActivityDEghTTorsp() {
|
||
this.$Request.getT('/app/invite/selectInviteAwardByUserId').then(res => {
|
||
if (res.code == 0) {
|
||
if (res.data) {
|
||
this.showjl = true
|
||
}
|
||
}
|
||
})
|
||
},
|
||
//去助力页面
|
||
goZlDEghTTorsp() {
|
||
uni.navigateTo({
|
||
url: '/me/assistance/assistance'
|
||
})
|
||
this.showjl = false
|
||
},
|
||
getvipdataDEghTTorsp() {
|
||
let data = {
|
||
userId: uni.getStorageSync('userId')
|
||
}
|
||
this.$u.api.userVip(data).then(res => {
|
||
if (res.code == 0 && res.data && res.data.isVip == 2) {
|
||
this.isVIP = true;
|
||
this.vipData = res.data.endTime
|
||
} else {
|
||
this.isVIP = false
|
||
|
||
}
|
||
})
|
||
},
|
||
selectWayDEghTTorsp: function(id) {
|
||
this.openWay = id;
|
||
},
|
||
getVIPDetDEghTTorsp() {
|
||
this.$u.api.vipDet().then(res => {
|
||
if (res.code == 0) {
|
||
res.data.forEach(ret => {
|
||
switch (ret.vipNameType) {
|
||
case 0:
|
||
ret.type = '月'
|
||
break;
|
||
case 1:
|
||
ret.type = '季'
|
||
break;
|
||
case 2:
|
||
ret.type = '年'
|
||
break;
|
||
}
|
||
})
|
||
this.VIPlist = res.data
|
||
} else {
|
||
uni.showToast({
|
||
title: res.msg,
|
||
duration: 1000,
|
||
icon: 'none'
|
||
});
|
||
}
|
||
})
|
||
},
|
||
bugVIPDEghTTorsp(e) {
|
||
if (this.checked == false) {
|
||
this.$refs.uToast.show({
|
||
title: '请阅读并同意《付费须知说明》',
|
||
duration: 1500
|
||
})
|
||
return
|
||
}
|
||
this.vipId = e
|
||
this.showPay = true
|
||
// // #ifdef MP-TOUTIAO
|
||
// this.toutiaoPayDEghTTorsp()
|
||
// // #endif
|
||
// // #ifndef MP-TOUTIAO
|
||
// this.showPay = true
|
||
// // #endif
|
||
|
||
},
|
||
//头条支付
|
||
toutiaoPayDEghTTorsp() {
|
||
let that = this
|
||
let data = {
|
||
vipDetailsId: this.vipId
|
||
}
|
||
|
||
uni.showLoading({
|
||
title: '支付中...'
|
||
})
|
||
this.$Request.getT('/app/order/insertVipOrders', data).then(res => {
|
||
if (res.code == 0) {
|
||
let dats = {
|
||
orderId: res.data.ordersId
|
||
}
|
||
if (this.osName == 'ios') {
|
||
dats.ios = 1
|
||
}
|
||
this.$Request.postT('/app/dyPay/payVirtualAppOrder', dats).then(ret => {
|
||
if (ret.code == 0) {
|
||
// console.log(JSON.parse(ret.data))
|
||
let options = {
|
||
data: JSON.stringify(ret.data.data),
|
||
byteAuthorization: JSON.stringify(ret.data.byteAuthorization)
|
||
}
|
||
tt.requestOrder({
|
||
data: JSON.stringify(ret.data.data), // 请勿在前端对data做任何处理
|
||
byteAuthorization: ret.data
|
||
.byteAuthorization, // 请勿在前端对byteAuthorization做任何处理
|
||
success(redd) {
|
||
console.log(JSON.stringify(redd))
|
||
tt.getOrderPayment({
|
||
orderId: redd.orderId,
|
||
success(reee) {
|
||
uni.hideLoading()
|
||
uni.showToast({
|
||
title: '支付成功',
|
||
})
|
||
setTimeout(d => {
|
||
let data = {
|
||
userId: uni
|
||
.getStorageSync(
|
||
'userId')
|
||
}
|
||
that.$u.api.userVip(data).then(
|
||
res => {
|
||
if (res.code ==
|
||
0 && res
|
||
.data && res
|
||
.data
|
||
.isVip ==
|
||
2) {
|
||
uni.setStorageSync(
|
||
'isVIP',
|
||
true)
|
||
} else {
|
||
uni.setStorageSync(
|
||
'isVIP',
|
||
false)
|
||
}
|
||
})
|
||
setTimeout(d => {
|
||
let data = {
|
||
flag: true
|
||
}
|
||
uni.$emit('back',
|
||
data)
|
||
uni.navigateBack(1)
|
||
}, 1000);
|
||
}, 2000)
|
||
},
|
||
fail(ee) {
|
||
uni.hideLoading()
|
||
uni.showToast({
|
||
title: '支付失败,请重试',
|
||
icon: 'none'
|
||
})
|
||
console.log(ee)
|
||
}
|
||
});
|
||
|
||
},
|
||
fail(e) {
|
||
uni.hideLoading()
|
||
uni.showToast({
|
||
title: '支付失败,请重试',
|
||
icon: 'none'
|
||
})
|
||
console.log(e)
|
||
}
|
||
});
|
||
} else {
|
||
uni.hideLoading()
|
||
uni.showToast({
|
||
title: res.msg,
|
||
icon: 'none'
|
||
})
|
||
}
|
||
})
|
||
} else {
|
||
uni.hideLoading()
|
||
uni.showToast({
|
||
title: res.msg,
|
||
icon: 'none'
|
||
})
|
||
}
|
||
})
|
||
},
|
||
payDEghTTorsp() {
|
||
let that = this
|
||
if (that.openWay == 4) { //抖音支付
|
||
that.toutiaoPayDEghTTorsp()
|
||
} else if (that.openWay == 5) { //快手支付
|
||
uni.showLoading({
|
||
title: '支付中...'
|
||
})
|
||
let data = {
|
||
vipDetailsId: that.vipId
|
||
}
|
||
this.$Request.getT('/app/order/insertVipOrders', data).then(res => {
|
||
if (res.code == 0) {
|
||
this.$Request.postT('/app/ksPay/payAppOrder', {
|
||
orderId: res.data.ordersId
|
||
}).then(ree => {
|
||
if (ree.code == 0) {
|
||
ks.pay({
|
||
serviceId: '1', //服务类型id(固定值为‘1’)
|
||
orderInfo: ree.data,
|
||
success(succ) {
|
||
uni.hideLoading()
|
||
uni.showToast({
|
||
title: '支付成功'
|
||
})
|
||
let data = {
|
||
userId: uni.getStorageSync('userId')
|
||
}
|
||
that.$u.api.userVip(data).then(res => {
|
||
if (res.code == 0 && res.data && res.data
|
||
.isVip ==
|
||
2) {
|
||
uni.setStorageSync('isVIP', true)
|
||
} else {
|
||
uni.setStorageSync('isVIP', false)
|
||
}
|
||
})
|
||
setTimeout(d => {
|
||
let data = {
|
||
flag: true
|
||
}
|
||
uni.$emit('back', data)
|
||
uni.navigateBack(1)
|
||
}, 1000);
|
||
},
|
||
fail(err) {
|
||
uni.hideLoading()
|
||
that.$refs.uToast.show({
|
||
title: '支付失败,请重试!',
|
||
duration: 1500
|
||
})
|
||
},
|
||
})
|
||
} else {
|
||
uni.hideLoading()
|
||
this.$refs.uToast.show({
|
||
title: ree.msg,
|
||
duration: 1500
|
||
})
|
||
}
|
||
})
|
||
} else {
|
||
uni.hideLoading()
|
||
this.$refs.uToast.show({
|
||
title: res.msg,
|
||
duration: 1500
|
||
})
|
||
}
|
||
})
|
||
|
||
} else {
|
||
let data = {
|
||
vipDetailsId: that.vipId
|
||
}
|
||
let userId = uni.getStorageSync('userId')
|
||
that.$u.api.VipOrders(data).then(res => {
|
||
if (that.openWay == 1) {
|
||
// #ifdef MP-WEIXIN
|
||
that.$u.post('app/wxPay/wxPayJsApiOrder?orderId=' + res.data.ordersId).then(ret => {
|
||
uni.requestPayment({
|
||
provider: 'wxpay',
|
||
timeStamp: ret.data.timestamp,
|
||
nonceStr: ret.data.noncestr,
|
||
package: ret.data.package,
|
||
signType: ret.data.signType,
|
||
paySign: ret.data.sign,
|
||
success: function(suc) {
|
||
console.log('success:' + JSON.stringify(suc));
|
||
that.showPay = false
|
||
uni.showToast({
|
||
title: '支付成功',
|
||
icon: 'success'
|
||
})
|
||
|
||
let data = {
|
||
userId: uni.getStorageSync('userId')
|
||
}
|
||
that.$u.api.userVip(data).then(res => {
|
||
if (res.code == 0 && res.data && res.data
|
||
.isVip ==
|
||
2) {
|
||
uni.setStorageSync('isVIP', true)
|
||
} else {
|
||
uni.setStorageSync('isVIP', false)
|
||
}
|
||
})
|
||
setTimeout(d => {
|
||
let data = {
|
||
flag: true
|
||
}
|
||
uni.$emit('back', data)
|
||
uni.navigateBack(1)
|
||
}, 1000);
|
||
},
|
||
fail: function(err) {
|
||
console.log('fail:' + JSON.stringify(err));
|
||
uni.showToast({
|
||
title: '支付失败',
|
||
icon: 'none'
|
||
})
|
||
}
|
||
});
|
||
});
|
||
// #endif
|
||
// #ifdef H5
|
||
let ua = navigator.userAgent.toLowerCase();
|
||
if (ua.indexOf('micromessenger') !== -1) {
|
||
this.$u.post('/app/wxPay/wxPayMpOrder?orderId=' + res.data.ordersId).then(red => {
|
||
if (red.code === 0) {
|
||
this.callPayDEghTTorsp(red.data);
|
||
} else {
|
||
uni.showToast({
|
||
icon: 'none',
|
||
title: '支付失败!'
|
||
});
|
||
}
|
||
});
|
||
}
|
||
// #endif
|
||
// #ifdef APP
|
||
this.$u.post("/app/wxPay/payAppOrder?orderId=" + res.data.ordersId).then(red => {
|
||
if (red.code == 0) {
|
||
that.setPaymentDEghTTorsp('wxpay', JSON.stringify(red
|
||
.data));
|
||
} else {
|
||
uni.showToast({
|
||
title: red.msg,
|
||
icon: 'none'
|
||
})
|
||
}
|
||
});
|
||
// #endif
|
||
} else if (that.openWay == 2) {
|
||
// #ifdef H5
|
||
this.$u.post('/app/aliPay/payOrder?orderId=' + res.data.ordersId + '&classify=2').then(
|
||
red => {
|
||
if (red.code === 0) {
|
||
const div = document.createElement('div')
|
||
div.innerHTML = red.data //此处form就是后台返回接收到的数据
|
||
document.body.appendChild(div)
|
||
document.forms[0].submit()
|
||
} else {
|
||
uni.showToast({
|
||
icon: 'none',
|
||
title: '支付失败!'
|
||
});
|
||
}
|
||
});
|
||
// #endif
|
||
// #ifdef APP
|
||
this.$u.post('/app/aliPay/payOrder?orderId=' + res.data.ordersId + '&classify=1').then(
|
||
red => {
|
||
if (red.code === 0) {
|
||
console.log('1111111')
|
||
that.setPaymentDEghTTorsp('alipay', red.data);
|
||
} else {
|
||
uni.showToast({
|
||
icon: 'none',
|
||
title: '支付失败!'
|
||
});
|
||
}
|
||
});
|
||
// #endif
|
||
} else if (that.openWay == 3) {
|
||
that.$queue.showLoading('支付中...')
|
||
that.$Request.postT("/app/order/payOrders", {
|
||
orderId: res.data.ordersId,
|
||
}).then(red => {
|
||
uni.hideLoading();
|
||
if (red.code == 0) {
|
||
that.showPay = false
|
||
uni.showToast({
|
||
title: '支付成功',
|
||
icon: 'success'
|
||
})
|
||
|
||
let data = {
|
||
userId: uni.getStorageSync('userId')
|
||
}
|
||
that.$u.api.userVip(data).then(res => {
|
||
if (res.code == 0 && res.data && res.data
|
||
.isVip ==
|
||
2) {
|
||
uni.setStorageSync('isVIP', true)
|
||
} else {
|
||
uni.setStorageSync('isVIP', false)
|
||
}
|
||
})
|
||
setTimeout(d => {
|
||
let data = {
|
||
flag: true
|
||
}
|
||
uni.$emit('back', data)
|
||
uni.navigateBack(1)
|
||
}, 1000);
|
||
} else {
|
||
that.$queue.showToast(red.msg)
|
||
}
|
||
});
|
||
}
|
||
|
||
|
||
})
|
||
}
|
||
|
||
},
|
||
isCheckPayDEghTTorsp(code, name, order) {
|
||
if (code == 0) {
|
||
console.log('999999999999')
|
||
this.setPaymentDEghTTorsp(name, order);
|
||
} else {
|
||
uni.hideLoading();
|
||
uni.showToast({
|
||
title: '支付信息有误'
|
||
});
|
||
}
|
||
},
|
||
setPaymentDEghTTorsp(name, order) {
|
||
let that = this
|
||
uni.requestPayment({
|
||
provider: name,
|
||
orderInfo: order, //微信、支付宝订单数据
|
||
success: function(res) {
|
||
uni.hideLoading();
|
||
that.showPay = false
|
||
uni.showToast({
|
||
title: '支付成功',
|
||
icon: 'success'
|
||
})
|
||
|
||
let data = {
|
||
userId: uni.getStorageSync('userId')
|
||
}
|
||
that.$u.api.userVip(data).then(res => {
|
||
if (res.code == 0 && res.data && res.data
|
||
.isVip ==
|
||
2) {
|
||
uni.setStorageSync('isVIP', true)
|
||
} else {
|
||
uni.setStorageSync('isVIP', false)
|
||
}
|
||
})
|
||
setTimeout(d => {
|
||
let data = {
|
||
flag: true
|
||
}
|
||
uni.$emit('back', data)
|
||
uni.navigateBack(1)
|
||
}, 1000);
|
||
},
|
||
fail: function(err) {
|
||
uni.hideLoading();
|
||
},
|
||
complete() {
|
||
uni.hideLoading();
|
||
}
|
||
});
|
||
},
|
||
callPayDEghTTorsp: function(response) {
|
||
if (typeof WeixinJSBridge === "undefined") {
|
||
if (document.addEventListener) {
|
||
document.addEventListener('WeixinJSBridgeReady', this.onBridgeReadyDEghTTorsp(response), false);
|
||
} else if (document.attachEvent) {
|
||
document.attachEvent('WeixinJSBridgeReady', this.onBridgeReadyDEghTTorsp(response));
|
||
document.attachEvent('onWeixinJSBridgeReady', this.onBridgeReadyDEghTTorsp(response));
|
||
}
|
||
} else {
|
||
this.onBridgeReadyDEghTTorsp(response);
|
||
}
|
||
},
|
||
onBridgeReadyDEghTTorsp: function(response) {
|
||
let that = this;
|
||
if (!response.package) {
|
||
return;
|
||
}
|
||
console.log("response)))):" + JSON.stringify(response))
|
||
WeixinJSBridge.invoke(
|
||
'getBrandWCPayRequest', {
|
||
"appId": response.appid, //公众号名称,由商户传入
|
||
"timeStamp": response.timestamp, //时间戳,自1970年以来的秒数
|
||
"nonceStr": response.noncestr, //随机串
|
||
"package": response.package,
|
||
"signType": response.signType, //微信签名方式:
|
||
"paySign": response.sign //微信签名
|
||
},
|
||
function(res) {
|
||
if (res.err_msg === "get_brand_wcpay_request:ok") {
|
||
// 使用以上方式判断前端返回,微信团队郑重提示:
|
||
//res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。
|
||
that.showPay = false
|
||
uni.showToast({
|
||
title: '支付成功',
|
||
icon: 'success'
|
||
})
|
||
|
||
let data = {
|
||
userId: uni.getStorageSync('userId')
|
||
}
|
||
that.$u.api.userVip(data).then(res => {
|
||
if (res.code == 0 && res.data && res.data
|
||
.isVip ==
|
||
2) {
|
||
uni.setStorageSync('isVIP', true)
|
||
} else {
|
||
uni.setStorageSync('isVIP', false)
|
||
}
|
||
})
|
||
setTimeout(d => {
|
||
let data = {
|
||
flag: true
|
||
}
|
||
uni.$emit('back', data)
|
||
uni.navigateBack(1)
|
||
}, 1000);
|
||
} else {
|
||
uni.hideLoading();
|
||
}
|
||
WeixinJSBridge.log(response.err_msg);
|
||
}
|
||
);
|
||
},
|
||
}
|
||
}
|
||
</script>
|
||
|
||
<style lang="scss">
|
||
.custom-style {
|
||
/* background: linear-gradient(90deg, #DBC084 0%, #E9D4A6 100%); */
|
||
/* padding: 0px 16px; */
|
||
/* border: 0px; */
|
||
color: #604320;
|
||
}
|
||
|
||
.illustrateDEghTTorsp {
|
||
width: 100%;
|
||
margin: 30rpx 0;
|
||
|
||
.illustrateDEghTTorsp-box {
|
||
width: 686rpx;
|
||
}
|
||
|
||
.illustrateDEghTTorsp-box-txt {
|
||
color: #ff7581;
|
||
}
|
||
|
||
}
|
||
|
||
/deep/.u-radio__label {
|
||
display: none !important;
|
||
}
|
||
|
||
/* #ifdef MP-TOUTIAO */
|
||
/deep/radio::before {
|
||
content: '' !important;
|
||
}
|
||
|
||
/* #endif */
|
||
|
||
|
||
/deep/.u-mode-center-box {
|
||
background-color: transparent !important;
|
||
}
|
||
|
||
.zlDEghTTorsp {
|
||
width: 518rpx;
|
||
height: 556rpx;
|
||
position: relative;
|
||
background: transparent;
|
||
|
||
.zlDEghTTorsp-bg {
|
||
width: 518rpx;
|
||
height: 556rpx;
|
||
position: absolute;
|
||
top: 0;
|
||
left: 0;
|
||
}
|
||
|
||
.zlDEghTTorsp-title {
|
||
position: absolute;
|
||
top: 15%;
|
||
left: 46%;
|
||
transform: translate(-50%, 100%);
|
||
font-size: 44rpx;
|
||
font-weight: bold;
|
||
color: #F24364;
|
||
background: linear-gradient(0deg, #FF5878 0.390625%, #F30931 100%);
|
||
background-clip: text;
|
||
-webkit-text-fill-color: transparent;
|
||
}
|
||
|
||
.zlDEghTTorsp-titlef {
|
||
font-size: 14rpx;
|
||
font-weight: bold;
|
||
color: #ffffff;
|
||
position: absolute;
|
||
top: 41%;
|
||
right: 35%;
|
||
}
|
||
|
||
.zlDEghTTorsp-titlef2 {
|
||
font-size: 14rpx;
|
||
font-weight: bold;
|
||
color: #ffffff;
|
||
position: absolute;
|
||
top: 48%;
|
||
left: 22%;
|
||
}
|
||
|
||
.zlDEghTTorsp-titlebtn {
|
||
font-size: 34rpx;
|
||
font-weight: bold;
|
||
background: linear-gradient(0deg, #FF5878 0.390625%, #F30931 100%);
|
||
-webkit-background-clip: text;
|
||
-webkit-text-fill-color: transparent;
|
||
position: absolute;
|
||
bottom: 10%;
|
||
left: 50%;
|
||
transform: translate(-65%, 50%);
|
||
}
|
||
}
|
||
|
||
.btn-bgDEghTTorsp {
|
||
width: 64px;
|
||
height: 28px;
|
||
background: linear-gradient(90deg, #DBC084 0%, #E9D4A6 100%);
|
||
color: #604320;
|
||
border-radius: 28px;
|
||
text-align: center;
|
||
line-height: 28px;
|
||
margin-top: 4px;
|
||
}
|
||
</style> |