new_shop_app/libs/login.js

105 lines
2.5 KiB
JavaScript
Raw Normal View History

2024-02-19 10:44:33 +08:00
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2023 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import store from "../store";
import Cache from '../utils/cache';
// #ifdef H5
import {
isWeixin
} from "../utils";
import auth from './wechat';
// #endif
import {
LOGIN_STATUS,
USER_INFO,
EXPIRES_TIME,
STATE_R_KEY
} from './../config/cache';
function prePage() {
let pages = getCurrentPages();
let prePage = pages[pages.length - 2];
// #ifdef H5
return prePage;
// #endif
//return prePage.$vm;
}
export function toLogin(push, pathLogin) {
store.commit("LOGOUT");
let path = prePage();
if (path) {
path = path.router;
if (path == undefined) {
path = location.pathname + location.search;
}
}
// #ifdef H5
else {
path = location.pathname + location.search;
}
// #endif
if (!pathLogin)
2024-02-24 16:08:09 +08:00
pathLogin = '/page/users/login/login_copy'
2024-03-21 10:11:41 +08:00
Cache.set('login_back_url', path);
2024-02-19 10:44:33 +08:00
// #ifdef H5
if (isWeixin()) {
2024-03-23 11:03:38 +08:00
auth.oAuth();
// if (Cache.get('WECHAT_APPID')) {
// uni.navigateTo({
// url: '/pages/users/wechat_login/index',
// });
// } else {
// return uni.navigateTo({
// url: '/pages/users/login/login_copy'
// })
// }
2024-02-19 10:44:33 +08:00
} else {
2024-02-24 16:08:09 +08:00
if (path !== pathLogin) {
push ? uni.navigateTo({
url: '/pages/users/login/login_copy'
}) : uni.reLaunch({
url: '/pages/users/login/login_copy'
});
2024-02-19 10:44:33 +08:00
}
2024-02-24 16:08:09 +08:00
}
// #endif
// #ifdef MP
let url
uni.navigateTo({
url: '/pages/users/wechat_login/index'
})
// #endif
2024-02-19 10:44:33 +08:00
// #ifdef APP-PLUS
uni.navigateTo({
2024-02-24 16:08:09 +08:00
url: '/pages/users/login/login_copy',
2024-02-19 10:44:33 +08:00
})
// #endif
}
export function checkLogin() {
let token = Cache.get(LOGIN_STATUS);
let expiresTime = Cache.get(EXPIRES_TIME) || 0;
let newTime = Math.round(new Date() / 1000);
if (expiresTime < newTime || !token) {
Cache.clear(LOGIN_STATUS);
Cache.clear(EXPIRES_TIME);
Cache.clear(USER_INFO);
Cache.clear(STATE_R_KEY);
return false;
} else {
store.commit('UPDATE_LOGIN', token);
let userInfo = Cache.get(USER_INFO, true);
if (userInfo) {
store.commit('UPDATE_USERINFO', userInfo);
}
return true;
}
2024-02-24 16:08:09 +08:00
}