Commit 7d93cbf7 by 程默

fix 登录getuserinfo

parent 9af24415
......@@ -4,14 +4,8 @@
<image class="img" mode="aspectFit" :src="logoUrl" />
<p class="shopName" v-if="shopName">{{shopName}}</p>
<div class="btn_info">
<button class="btn" lang="zh_CN" open-type="getUserInfo" @getuserinfo="getUserInfo">微信一键登录</button>
<button class="btn" lang="zh_CN" @click="getUserProfile">微信一键登录</button>
</div>
<!-- <div>{{testd}}</div>
<div>{{test_sessionId}}</div>--sessionId
<div>{{unionId}}</div>--unionId
<div>{{test_isHaveUnion}}</div>--isHaveUnion-->
<!-- <div class="enterpriseLogin" @click="eLogin">账号登录</div> -->
</div>
<div class="toCLogin1" v-if="isShowPhone">
<div class="btn_info1">
......@@ -32,13 +26,8 @@ import { wx_decode } from "@/utils/wxIndex.js";
import login from "@/api/login";
import shop from "@/api/shop";
import indexApi from "@/api/index.js";
var WXBizDataCrypt = require("@/utils/WXBizDataCrypt");
const app = getApp();
export default {
name:'login',
components: {
// card
},
data() {
return {
code: "",
......@@ -68,9 +57,9 @@ export default {
test_isHaveUnion: "",
test_unionId: "",
fromType:'',//来源类型 mini:小程序跳转到当前登录页
scene:''//场景
};
},
created() {},
onShow() {
wx.checkSession({
success : () => {
......@@ -99,6 +88,7 @@ export default {
},
onLoad(options) {
Object.assign(this.$data, this.$options.data()); //mpvue 的混合周期 使用小程序生命周期数据未初始化
options.scene && (this.scene=options.scene)
if (options.back) {
this.backPath = options.back;
}
......@@ -171,102 +161,64 @@ export default {
})
}
},
getUserInfo: function(e) {
this.backParams=this.defalutBackParams
wx.showLoading({
title: "加载中"
});
if (e.target.errMsg == "getUserInfo:ok") {
this.init()
.then(res => {
console.log("promise", res);
//存入openid
try {
wx.setStorageSync('openid', res.data.data.openid)
} catch (e) {
console.log('存入openid失败',e)
}
wx.getStorage({
key: "openid",
success (res) {
console.log("promise_openid1",res)
},
fail(err){
console.log("promise_openid2",err)
getUserProfile() {
// 推荐使用wx.getUserProfile获取用户信息,开发者每次通过该接口获取用户个人信息均需用户确认
// 开发者妥善保管用户快速填写的头像昵称,避免重复弹窗
wx.getUserProfile({
desc: '用于完善会员资料', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
success: (e) => {
this.init()
.then(res => {
//存入openid
try {
wx.setStorageSync('openid', res.data.data.openid)
} catch (e) {
console.log('存入openid失败',e)
}
})
//
if (res.data.data.isHaveUnion == "true") {
//有账号
this.backParams += `&sessionid=${
res.data.data.sessionId
}&needCertified=${res.data.data.NEED_CERTIFIED}`;
this.NEED_CERTIFIED = res.data.data.NEED_CERTIFIED;
wx.setStorage({
key: "sessionid",
data: res.data.data.sessionId
});
if (res.data.data.isHaveUnion == "true") {
//有账号
this.backParams += `&sessionid=${
res.data.data.sessionId
}&needCertified=${res.data.data.NEED_CERTIFIED}`;
this.NEED_CERTIFIED = res.data.data.NEED_CERTIFIED;
wx.setStorage({
key: "sessionid",
data: res.data.data.sessionId
});
this.isHaveUnion = true;
} else {
//需要绑定
this.isHaveUnion = false;
}
this.isHaveUnion = true;
} else {
//需要绑定
this.isHaveUnion = false;
}
this.appid = res.data.data.appid;
this.session_key = res.data.data.session_key;
this.openid = res.data.data.openid;
this.isShow = true;
this.appid = res.data.data.appid;
this.session_key = res.data.data.session_key;
this.openid = res.data.data.openid;
this.unionId = res.data.data.unionId || '';
this.isShow = true;
//checkLogin
this.checkLogin(e);
})
.catch(err => {
console.log("err", err);
wx.hideLoading();
wx.showToast({ title: err, icon: "none" });
});
} else {
wx.hideLoading();
wx.showToast({ title: "获取用户信息失败", icon: "none" });
}
//checkLogind
this.checkLogin(e);
})
.catch(err => {
console.log("err", err);
wx.hideLoading();
wx.showToast({ title: err, icon: "none" });
});
}
})
},
checkLogin(e) {
console.log(this.isHaveUnion,e)
this.userInfo = e.userInfo;
this.$store.commit('setUserInfo',this.userInfo)
if (this.isHaveUnion) {
wx.hideLoading();
//是会员 直接登录
// 0318写直播改后面注释逻辑相同
// wx.reLaunch({
// url: `../index/main?from=login&backpath=${
// this.backPath
// }&params=${encodeURIComponent(this.backParams)}`
// });
// 跳转回小程序页面
var data = wx_decode(
this.appid,
this.session_key,
e.mp.detail.encryptedData,
e.mp.detail.iv
);
this.userInfo = JSON.parse(e.target.rawData);
this.$store.commit('setUserInfo',this.userInfo)
this.addRecord(false);
this.pushPageType();
} else {
var data = wx_decode(
this.appid,
this.session_key,
e.mp.detail.encryptedData,
e.mp.detail.iv
);
this.unionId = data.unionId || "";
this.userInfo = JSON.parse(e.target.rawData);
console.log(this.userInfo, "this.userInfo");
this.$store.commit('setUserInfo',this.userInfo)
if (this.unionId) {
login
.checkUnionid({ unionId: this.unionId, openId: this.openid })
......@@ -324,12 +276,13 @@ export default {
wx.navigateBack({
delta: 1
});
}else if (this.scene=='sso') {
wx.redirectTo({
url: `../wxArticle/main?link=${this.backPath}`,
});
}else{
let parseLink=decodeURIComponent(this.backPath);
let isTabbarIndex =checkTabbarPage(parseLink)
console.log('32111',isTabbarIndex,parseLink,this.backParams)
// wx.navigateBack()
// return
if(isTabbarIndex>-1){
wx.reLaunch({
url: parseLink == '/' ? '/pages/home/main' : `/pages/tabBar${isTabbarIndex}/main`,
......@@ -341,7 +294,6 @@ export default {
}&params=${encodeURIComponent(this.backParams)}`
});
}
}
},
getPhoneNumber(e) {
......@@ -378,6 +330,7 @@ export default {
province: this.userInfo.province,
city: this.userInfo.city,
otherPhone: 0,
articleId: wx.getStorageSync(this.$store.state.mixid+"articleId") || '',
customerSourceType: wx.getStorageSync(this.$store.state.mixid+"articleId")?8:'',
customerSourceId: wx.getStorageSync(this.$store.state.mixid+"articleId") || ''
};
......
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