Commit 6b03bbe2 authored by 潘永坪's avatar 潘永坪

登录和支付优化

parent a2db5f84
<template> <template>
<view> <view> </view>
</view>
</template> </template>
<script> <script>
export default { export default {
data() { data() {
return { return {}
}
}, },
methods: { onLoad() {
this.login()
}, },
onLoad(){ methods:{
let _this=this //---登录
login(){
let _this = this
uni.getProvider({ uni.getProvider({
service: 'oauth', service: 'oauth',
success(proRes){ success(proRes) {
uni.login({ uni.login({
provider:proRes.provider[0], provider: proRes.provider[0],
success: function (res) { success: function(res) {
if(res.code){ if (res.code) {
let source='' let source = ''
if(proRes.provider[0]=='weixin'){ if (proRes.provider[0] == 'weixin') {
source=3 source = 3
}else if(proRes.provider[0]=='alipay'){ } else if (proRes.provider[0] == 'alipay') {
source=4 source = 4
} }
let data={ let data = {
code:res.code, code: res.code,
source,//微信小程序3,支付宝小程序4 source //微信小程序3,支付宝小程序4
} }
_this.$request('wechat/wx/getUserInfoByCode',data).then(res => { _this.$request('wechat/wx/getUserInfoByCode', data).then(res => {
if(res.code=='00'){ if (res.code == '00') {
let openid=res.data.openid let openid = res.data.openid
uni.setStorageSync('openid',openid) uni.setStorageSync('openid', openid)
let userId=res.data.userId||'' let userId = res.data.userId || ''
let datas={openid,source,userId} let datas = { openid, source, userId }
_this.$request('wechatUser/login/findWxUserAndLogin',datas).then((res)=>{//通过openid获取token _this.$request('wechatUser/login/findWxUserAndLogin', datas).then(res => {
if(res.code=='00'){ //通过openid获取token
let token=res.data.token||'' if (res.code == '00') {
uni.setStorageSync('token',token) let token = res.data.token || ''
let createUserId=res.data.personId||'' uni.setStorageSync('token', token)
uni.setStorageSync('createUserId',createUserId) let createUserId = res.data.personId || ''
let userId=res.data.userId||'' uni.setStorageSync('createUserId', createUserId)
uni.setStorageSync('userId',userId) let userId = res.data.userId || ''
let enterOptions=uni.getStorageSync('enterOptions') uni.setStorageSync('userId', userId)
let queryTotal='' let enterOptions = uni.getStorageSync('enterOptions')
for(let key in enterOptions.query){ let queryTotal = ''
queryTotal+='&'+key+'='+enterOptions.query[key] for (let key in enterOptions.query) {
queryTotal += '&' + key + '=' + enterOptions.query[key]
} }
queryTotal=queryTotal.substr(1) queryTotal = queryTotal.substr(1)
if(token){ if (token) {
uni.redirectTo({ uni.redirectTo({
url:'/'+enterOptions.path+'?'+queryTotal url: '/' + enterOptions.path + '?' + queryTotal
}) })
// uni.navigateBack({ // uni.navigateBack({
// delta:1 // delta:1
// }) // })
} }
}else{ } else {
uni.showToast({ uni.showToast({
title:res.message+'请退出并重新登录', title: res.message + '请退出并重新登录',
icon:'none' icon: 'none'
}) })
} }
}).catch((err)=>{ })
.catch(err => {
uni.showToast({ uni.showToast({
title:'登录失败,请退出并重新登录', title: '登录失败,请退出并重新登录',
icon:'none' icon: 'none'
})
let timer = setTimeout(() => {
_this.login()
}, 2000)
this.$once('hook:beforeDestroy', () => {
clearTimeout(timer)
}) })
}) })
}else{ } else {
uni.showToast({ uni.showToast({
title:res.message='请退出并重新登录', title: res.message + '请退出并重新登录',
icon:'none' icon: 'none'
}) })
} }
}).catch((err)=>{ })
.catch(err => {
uni.showToast({ uni.showToast({
title:'登录失败,请退出并重新登录', title: '登录失败,请退出并重新登录',
icon:'none' icon: 'none'
})
let timer = setTimeout(() => {
_this.login()
}, 2000)
this.$once('hook:beforeDestroy', () => {
clearTimeout(timer)
}) })
}) })
} }
...@@ -90,11 +103,10 @@ ...@@ -90,11 +103,10 @@
}) })
} }
}) })
},
} }
</script> }
}
<style> </script>
</style> <style></style>
...@@ -160,9 +160,12 @@ export default { ...@@ -160,9 +160,12 @@ export default {
title: '登录失败', title: '登录失败',
icon: 'none' icon: 'none'
}) })
setTimeout(() => { let timer=setTimeout(()=>{
_this.login() _this.login()
}, 2000) },2000)
this.$once('hook:beforeDestroy', () => {
clearTimeout(timer)
})
}) })
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment