2024-10-13 11:24:45 +08:00
|
|
|
import {
|
|
|
|
getToken,
|
2024-10-13 15:40:15 +08:00
|
|
|
setToken,
|
|
|
|
getOpenId,
|
2024-10-15 00:32:25 +08:00
|
|
|
setOpenId,
|
2024-12-29 11:46:50 +08:00
|
|
|
setUserInfo,
|
2024-10-15 00:32:25 +08:00
|
|
|
getSessionKey,
|
|
|
|
setSessionKey,
|
2024-10-13 11:24:45 +08:00
|
|
|
} from '../../utils/auth'
|
|
|
|
import {
|
2024-10-15 23:55:05 +08:00
|
|
|
wxLogin,
|
2024-10-13 15:40:15 +08:00
|
|
|
maLogin,
|
2024-10-13 11:24:45 +08:00
|
|
|
getCodeImg,
|
2024-10-13 15:40:15 +08:00
|
|
|
getMaOpenId,
|
2024-10-15 23:55:05 +08:00
|
|
|
refreshMobileToken,
|
2024-12-29 11:46:50 +08:00
|
|
|
findUserInfoByCache,
|
2024-10-13 11:24:45 +08:00
|
|
|
} from '../../api/login'
|
2024-12-29 11:46:50 +08:00
|
|
|
import {
|
|
|
|
findMyProjectList,
|
|
|
|
} from '../../api/project'
|
2024-10-13 11:24:45 +08:00
|
|
|
const app = getApp();
|
|
|
|
Page({
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 页面的初始数据
|
|
|
|
*/
|
|
|
|
data: {
|
|
|
|
username: '',
|
|
|
|
password: '',
|
|
|
|
code: '',
|
|
|
|
uuid: '',
|
|
|
|
codeUrl: '',
|
2024-12-17 20:25:21 +08:00
|
|
|
checked: true,
|
2024-10-13 11:24:45 +08:00
|
|
|
},
|
|
|
|
|
|
|
|
//获取填写的账号信息
|
|
|
|
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) {
|
2024-10-13 15:40:15 +08:00
|
|
|
this.getMaOpenId();
|
2024-10-13 11:24:45 +08:00
|
|
|
if (getToken()) {
|
|
|
|
console.log("Authorization...{}", getToken());
|
|
|
|
//刷新权限信息
|
2024-10-15 23:55:05 +08:00
|
|
|
refreshMobileToken().then(res => {
|
2024-10-13 11:24:45 +08:00
|
|
|
if (res.code == '200') {
|
2024-12-29 11:46:50 +08:00
|
|
|
this.getUserInfoByCache();
|
2024-10-13 11:24:45 +08:00
|
|
|
} else {
|
2024-12-29 11:46:50 +08:00
|
|
|
this.loadCodeImage();
|
2024-10-13 11:24:45 +08:00
|
|
|
}
|
|
|
|
});
|
|
|
|
} else {
|
|
|
|
console.log("未查询到Token...{}...准备重新登录")
|
|
|
|
this.loadCodeImage();
|
|
|
|
}
|
|
|
|
},
|
|
|
|
|
2024-10-13 15:40:15 +08:00
|
|
|
/**
|
|
|
|
* 授权登录
|
|
|
|
*/
|
|
|
|
getMaOpenId: function () {
|
|
|
|
wx.login({
|
|
|
|
success: res => {
|
2024-10-15 00:32:25 +08:00
|
|
|
getMaOpenId({'code':res.code}).then(response => {
|
|
|
|
setOpenId(response.data.openid);
|
|
|
|
setSessionKey(response.data.sessionKey);
|
2024-10-13 15:40:15 +08:00
|
|
|
});
|
|
|
|
}
|
|
|
|
})
|
|
|
|
},
|
|
|
|
|
2024-10-13 11:24:45 +08:00
|
|
|
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;
|
|
|
|
//发送请求
|
2024-10-15 23:55:05 +08:00
|
|
|
wxLogin({
|
2024-10-13 11:24:45 +08:00
|
|
|
"username": username,
|
|
|
|
"password": password,
|
|
|
|
"code": code,
|
|
|
|
"uuid": that.data.uuid,
|
|
|
|
}).then(res => {
|
|
|
|
if (res.code == '200') {
|
2024-12-29 11:46:50 +08:00
|
|
|
setToken(res.data.access_token)
|
2024-10-13 11:24:45 +08:00
|
|
|
//跳转页面
|
2024-12-29 11:46:50 +08:00
|
|
|
this.getUserInfoByCache();
|
2024-10-13 11:24:45 +08:00
|
|
|
} else {
|
|
|
|
that.loadCodeImage();
|
|
|
|
}
|
|
|
|
});
|
|
|
|
},
|
|
|
|
|
|
|
|
getPhoneNumber(e) {
|
2024-10-13 15:40:15 +08:00
|
|
|
if(e.detail.code){
|
|
|
|
let data = {
|
2024-10-15 00:32:25 +08:00
|
|
|
openId:getOpenId(),
|
|
|
|
sessionKey:getSessionKey(),
|
2024-10-13 15:40:15 +08:00
|
|
|
iv: e.detail.iv,
|
|
|
|
encryptedData: e.detail.encryptedData
|
|
|
|
}
|
2024-10-15 23:55:05 +08:00
|
|
|
maLogin(data).then(res =>{
|
|
|
|
setToken(res.access_token)
|
|
|
|
//跳转页面
|
|
|
|
wx.redirectTo({
|
|
|
|
url: '../index/index',
|
|
|
|
})
|
|
|
|
})
|
2024-10-13 15:40:15 +08:00
|
|
|
}else{
|
|
|
|
//用户决绝授权
|
|
|
|
app.toast("请允许微信手机号一键登录");
|
|
|
|
}
|
2024-10-13 11:24:45 +08:00
|
|
|
},
|
|
|
|
|
2024-12-29 11:46:50 +08:00
|
|
|
/**
|
|
|
|
* 查询
|
|
|
|
* 用户详细信息
|
|
|
|
* @param {*} e
|
|
|
|
*/
|
|
|
|
getUserInfoByCache: function () {
|
|
|
|
findUserInfoByCache().then(res=>{
|
|
|
|
if(res.code==200){
|
|
|
|
setUserInfo(res.user);
|
|
|
|
app.globalData.userData = res.user;
|
|
|
|
this.getMyProjectList();
|
|
|
|
}
|
|
|
|
});
|
|
|
|
},
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 查询
|
|
|
|
* 用户项目信息
|
|
|
|
* 根据项目配置进入不同页面...
|
|
|
|
*/
|
|
|
|
getMyProjectList: function () {
|
|
|
|
findMyProjectList().then(res=>{
|
|
|
|
if(res.code==200){
|
|
|
|
app.globalData.projectInfoList = res.rows;
|
|
|
|
if(res.rows.length>0){
|
|
|
|
if(res.rows.length==1){
|
|
|
|
app.globalData.useProjectId = res.rows[0].id;
|
|
|
|
app.globalData.useProjectName = res.rows[0].projectName;
|
|
|
|
//单项目直接进入项目页面
|
|
|
|
wx.redirectTo({
|
|
|
|
url: '../project_info/index',
|
|
|
|
})
|
|
|
|
}else{
|
|
|
|
//多项目进入项目切换页面
|
|
|
|
wx.redirectTo({
|
|
|
|
url: '../project_list/index',
|
|
|
|
})
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
app.toast("未查询到当前用户项目,信息审核中或人员已离场");
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
},
|
2024-10-13 11:24:45 +08:00
|
|
|
})
|