156 lines
3.1 KiB
JavaScript
156 lines
3.1 KiB
JavaScript
import {
|
|
getToken,
|
|
setToken,
|
|
getOpenId,
|
|
setOpenId,
|
|
getSessionKey,
|
|
setSessionKey,
|
|
} from '../../utils/auth'
|
|
import {
|
|
wxLogin,
|
|
maLogin,
|
|
getCodeImg,
|
|
getMaOpenId,
|
|
refreshMobileToken,
|
|
} from '../../api/login'
|
|
|
|
const app = getApp();
|
|
Page({
|
|
|
|
/**
|
|
* 页面的初始数据
|
|
*/
|
|
data: {
|
|
username: '',
|
|
password: '',
|
|
code: '',
|
|
uuid: '',
|
|
codeUrl: '',
|
|
checked: true
|
|
},
|
|
|
|
//获取填写的账号信息
|
|
name: function (even) {
|
|
this.setData({
|
|
username: even.detail.value
|
|
})
|
|
},
|
|
//获取填写的密码信息
|
|
psw: function (even) {
|
|
this.setData({
|
|
password: even.detail.value
|
|
})
|
|
},
|
|
//获取填写的密码信息
|
|
code: function (even) {
|
|
this.setData({
|
|
code: even.detail.value
|
|
})
|
|
},
|
|
|
|
onLoad: function (option) {
|
|
this.getMaOpenId();
|
|
if (getToken()) {
|
|
console.log("Authorization...{}", getToken());
|
|
//刷新权限信息
|
|
refreshMobileToken().then(res => {
|
|
if (res.code == '200') {
|
|
wx.redirectTo({
|
|
url: '../index/index',
|
|
})
|
|
} else {
|
|
that.loadCodeImage();
|
|
}
|
|
});
|
|
} else {
|
|
console.log("未查询到Token...{}...准备重新登录")
|
|
this.loadCodeImage();
|
|
}
|
|
},
|
|
|
|
/**
|
|
* 授权登录
|
|
*/
|
|
getMaOpenId: function () {
|
|
wx.login({
|
|
success: res => {
|
|
getMaOpenId({'code':res.code}).then(response => {
|
|
setOpenId(response.data.openid);
|
|
setSessionKey(response.data.sessionKey);
|
|
});
|
|
}
|
|
})
|
|
},
|
|
|
|
loadCodeImage: function () {
|
|
getCodeImg().then(res => {
|
|
let captchaEnabled = res.captchaEnabled === undefined ? true : res.captchaEnabled
|
|
if (captchaEnabled) {
|
|
this.setData({
|
|
codeUrl: 'data:image/gif;base64,' + res.img,
|
|
uuid: res.uuid
|
|
})
|
|
}
|
|
});
|
|
},
|
|
|
|
//登录
|
|
userLogin: function () {
|
|
var username = this.data.username;
|
|
var password = this.data.password;
|
|
var code = this.data.code;
|
|
if (username == "") {
|
|
app.toast("登录账号不能为空");
|
|
return;
|
|
}
|
|
if (password == "") {
|
|
app.toast("登录密码不能为空");
|
|
return;
|
|
}
|
|
if (code == "") {
|
|
app.toast("验证码不能为空");
|
|
return;
|
|
}
|
|
//启动蒙版
|
|
let that = this;
|
|
//发送请求
|
|
wxLogin({
|
|
"username": username,
|
|
"password": password,
|
|
"code": code,
|
|
"uuid": that.data.uuid,
|
|
}).then(res => {
|
|
if (res.code == '200') {
|
|
setToken(res.access_token)
|
|
//跳转页面
|
|
wx.redirectTo({
|
|
url: '../index/index',
|
|
})
|
|
} else {
|
|
that.loadCodeImage();
|
|
}
|
|
});
|
|
},
|
|
|
|
getPhoneNumber(e) {
|
|
if(e.detail.code){
|
|
let data = {
|
|
openId:getOpenId(),
|
|
sessionKey:getSessionKey(),
|
|
iv: e.detail.iv,
|
|
encryptedData: e.detail.encryptedData
|
|
}
|
|
maLogin(data).then(res =>{
|
|
setToken(res.access_token)
|
|
//跳转页面
|
|
wx.redirectTo({
|
|
url: '../index/index',
|
|
})
|
|
})
|
|
}else{
|
|
//用户决绝授权
|
|
app.toast("请允许微信手机号一键登录");
|
|
}
|
|
},
|
|
|
|
}) |