Browse Source

修复白名单机制

remotes/origin/HEAD
wally 5 years ago
parent
commit
2fa527c2dd
  1. 38
      App.vue
  2. 34
      main.js
  3. 10
      store/modules/user/actions.js
  4. 6
      utils/user.js

38
App.vue

@ -16,23 +16,27 @@ export default {
}, },
}); });
await this.login(); try {
await this.login();
const startTime = +this.$moment()
.startOf('year') const startTime = +this.$moment()
.format('x'); .startOf('year')
const endTime = +this.$moment() .format('x');
.endOf('day') const endTime = +this.$moment()
.format('x'); .endOf('day')
const params = { .format('x');
param: { const params = {
startTime, param: {
endTime, startTime,
token: this.token endTime,
} token: this.token,
}; },
await this.getUserInfo(params); };
await this.getHealthTypeStatus(); await this.getUserInfo(params);
await this.getHealthTypeStatus();
} catch (error) {
console.log('error: ', error);
}
}, },
computed: mapState('user', ['token']), computed: mapState('user', ['token']),

34
main.js

@ -4,6 +4,17 @@ import { http } from 'plugins/request/index';
import App from './App'; import App from './App';
import store from './store'; import store from './store';
// 白名单页面
const whitePathList = ['basic-info', 'statistics', 'user-code'];
/**
* 检查url是否在是否在白名单内
* @param {string} url path+query
*/
const checkWhitePath = url => {
let str = url.slice(7).split('/')[0];
return whitePathList.includes(str);
};
Vue.config.productionTip = false; Vue.config.productionTip = false;
Vue.prototype.$http = http; Vue.prototype.$http = http;
Vue.prototype.$moment = moment; Vue.prototype.$moment = moment;
@ -23,18 +34,21 @@ Vue.prototype.goHome = () => {
*/ */
// 白名单页面 // 白名单页面
const whiteListPath = ['/pages/basic-info/basic-info','/pages/statistics/statistics','/pages/user-code/user-code'] const whiteListPath = [
'/pages/basic-info/basic-info',
'/pages/statistics/statistics',
'/pages/user-code/user-code',
];
Vue.prototype.openPage = function(path, query = '') { Vue.prototype.openPage = function(path, query = '') {
let url = query ? `${path}?${query}` : path; let url = query ? `${path}?${query}` : path;
store.commit('user/setPagePath',url) store.commit('user/setPagePath', url);
const isWhite = checkWhitePath(url);
const choosePath = whiteListPath.indexOf(path) if (!store.state.user.userInfo.id && !isWhite) {
if(!store.state.user.userInfo.id && choosePath === -1) { url = '/pages/basic-info/basic-info';
url = '/pages/basic-info/basic-info'; }
}
uni.navigateTo({ url });
uni.navigateTo({ url });
}; };
App.mpType = 'app'; App.mpType = 'app';

10
store/modules/user/actions.js

@ -12,7 +12,7 @@ const actions = {
mpLogin() mpLogin()
.then(params => signIn(params)) .then(params => signIn(params))
.then(data => { .then(data => {
// console.log('login data: ', data); console.log('login data: ', data);
commit('setToken', data.token); commit('setToken', data.token);
commit('setUser', data); commit('setUser', data);
@ -20,7 +20,7 @@ const actions = {
}) })
.catch(err => { .catch(err => {
console.log('login err: ', err); console.log('login err: ', err);
// showModal(err.msg || '登录失败'); showModal(err.msg || '登录失败');
reject(err); reject(err);
}); });
// #endif // #endif
@ -69,11 +69,11 @@ const actions = {
*/ */
getUserInfo({ commit }, params) { getUserInfo({ commit }, params) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
showLoading(); showLoading();
http http
.post(GET_USER_INFO, params) .post(GET_USER_INFO, params)
.then(res => { .then(res => {
hideLoading(); hideLoading();
const { data } = res.data; const { data } = res.data;
resolve(data); resolve(data);
// 获取自己的信息采取设置 // 获取自己的信息采取设置
@ -88,7 +88,7 @@ const actions = {
} }
}) })
.catch(data => { .catch(data => {
hideLoading(); hideLoading();
showToast(data.msg || '查询个人信息失败'); showToast(data.msg || '查询个人信息失败');
reject(data); reject(data);
}); });

6
utils/user.js

@ -8,14 +8,14 @@ import { SIGN_IN_CLIENTS, SIGN_IN_TYPES } from 'config/config.user';
* @param {string} token 服务端返回的token数据 * @param {string} token 服务端返回的token数据
*/ */
export const setToken = token => { export const setToken = token => {
uni.setStorageSync('anyringToken', token); uni.setStorageSync('token', token);
}; };
/** /**
* 获取token * 获取token
* @return {string} 本地保存的token * @return {string} 本地保存的token
*/ */
export const getToken = () => uni.getStorageSync('anyringToken'); export const getToken = () => uni.getStorageSync('token');
/** /**
* 提交登录信息 * 提交登录信息
@ -69,7 +69,7 @@ export const wxLogin = () => {
}); });
}; };
// 微信登录 // 企业微信登录
export const wxWorkLogin = () => { export const wxWorkLogin = () => {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
wx.qy.login({ wx.qy.login({

Loading…
Cancel
Save