zhanbo.xu

feat:优化非账号密码登录

import router from "./router";
import store from "./store";
import { Message, MessageBox } from "element-ui";
import { getToken, getLoginType } from "@/utils/auth";
import { alertWarningMsg, alertSuccessMsg, alertErrorMsg } from "@/utils/index";
import { getToken } from "@/utils/auth";
import { getParamsObj } from "@/utils/parseUrlParams";
const whiteList = [
"/login",
......@@ -12,7 +10,12 @@ const whiteList = [
"/relogin",
];
const userToken = getParamsObj(location.href).token;
router.beforeEach((to, from, next) => {
if (userToken) {
store.dispatch("LoginWithoutPassword", userToken).then(() => {});
}
if (to.path == "/relogin") {
next();
} else {
......@@ -67,7 +70,6 @@ router.beforeEach((to, from, next) => {
next();
} else {
if (to.path === "/reportingData") {
const userToken = getParamsObj(location.href).token;
store.dispatch("LoginWithoutPassword", userToken).then(() => {
next(`/reportingData`);
});
......
import { login, logout } from '@/api/login'
import { getInfo } from '@/api/system/user.js'
import { getLogisticsCodeLis, getDictData } from '@/api/system/dict-api.js'
import { getToken, setToken, removeToken, removeUserId, removeTime } from '@/utils/auth'
import { getParamsObj } from '@/utils/parseUrlParams'
import { alertWarningMsg } from '@/utils/index.js'
import { login, logout } from "@/api/login";
import { getInfo } from "@/api/system/user.js";
import { getDictData } from "@/api/system/dict-api.js";
import {
getToken,
setToken,
removeToken,
removeUserId,
removeTime,
} from "@/utils/auth";
const user = {
state: {
token: getToken(),
userData: null,
name: '',
avatar: '',
name: "",
avatar: "",
roles: [],
permissions: [],
linkList: [],
dict: {
DECLARE_TRAFMODE: [{ itemCode: 'DECLARE_TRAFMODE_AVIATION', itemChineseName: '航空运输', itemValue: '5' }]
DECLARE_TRAFMODE: [
{
itemCode: "DECLARE_TRAFMODE_AVIATION",
itemChineseName: "航空运输",
itemValue: "5",
},
],
},
loading: {
type: false,
text: '拼命加载中"'
}
text: '拼命加载中"',
},
},
mutations: {
SET_TOKEN: (state, token) => {
state.token = token
state.token = token;
},
SET_USERDATA: (state, data) => {
state.userData = data
state.userData = data;
},
SET_NAME: (state, name) => {
state.name = name
state.name = name;
},
SET_AVATAR: (state, avatar) => {
state.avatar = avatar
state.avatar = avatar;
},
SET_ROLES: (state, roles) => {
state.roles = roles
state.roles = roles;
},
SET_PERMISSIONS: (state, permissions) => {
state.permissions = permissions
state.permissions = permissions;
},
SET_LINKLIST: (state, linkList) => {
state.linkList = linkList
state.linkList = linkList;
},
SET_DICT: (state, dict) => {
state.dict = dict
state.dict = dict;
},
SET_LOAD: (state, loading) => {
state.loading.type = loading.type
state.loading.text = loading.text
state.loading.type = loading.type;
state.loading.text = loading.text;
},
},
actions: {
// 登录
Login({ commit, state }, userInfo) {
const loginName = userInfo.userName.trim()
const password = userInfo.password
const rememberMe = userInfo.rememberMe
const loginName = userInfo.userName.trim();
const password = userInfo.password;
const rememberMe = userInfo.rememberMe;
return new Promise((resolve, reject) => {
login(loginName, password, rememberMe).then(res => {
if (res.code != '200') {
reject(res)
} else {
if (!getToken()) {
setToken(res.data)
commit('SET_TOKEN', res.data)
resolve(res)
login(loginName, password, rememberMe)
.then((res) => {
if (res.code != "200") {
reject(res);
} else {
resolve(res)
if (!getToken()) {
setToken(res.data);
commit("SET_TOKEN", res.data);
resolve(res);
} else {
resolve(res);
}
}
}
}).catch(error => {
reject(error)
})
})
})
.catch((error) => {
reject(error);
});
});
},
//非账号密码登录
LoginWithoutPassword({ commit }, token) {
return new Promise((resolve) => {
if (!getToken()) {
setToken(token)
commit('SET_TOKEN', token)
resolve(token)
} else {
resolve(token)
}
})
setToken(token);
commit("SET_TOKEN", token);
resolve(token);
// if (!getToken()) {
// setToken(token);
// commit("SET_TOKEN", token);
// resolve(token);
// } else {
// resolve(token);
// }
});
},
// 获取用户信息
async GetInfo({ commit, state }) {
return new Promise((resolve, reject) => {
getInfo().then(res => {
if (res.code === '200') {
commit("SET_USERDATA", res.data);
resolve(res)
} else {
reject(res)
}
}).catch(error => {
reject(error)
})
})
getInfo()
.then((res) => {
if (res.code === "200") {
commit("SET_USERDATA", res.data);
resolve(res);
} else {
reject(res);
}
})
.catch((error) => {
reject(error);
});
});
},
//获取字典数据
async GetDict({ commit, state }, codeList) {
let obj = state.dict
let obj = state.dict;
codeList.forEach((item, idx) => {
if (obj[item] == undefined || obj[item].length == 0) {
obj[item] = []
getDictData({ doctCode: item }).then(res => {
if (res.code === '200') {
obj[item] = res.data
}
}).catch(err => {
console.log(err);
}).finally(() => {
if (idx == codeList.length - 1) {
console.log(obj);
commit('SET_DICT', obj)
}
})
obj[item] = [];
getDictData({ doctCode: item })
.then((res) => {
if (res.code === "200") {
obj[item] = res.data;
}
})
.catch((err) => {
console.log(err);
})
.finally(() => {
if (idx == codeList.length - 1) {
console.log(obj);
commit("SET_DICT", obj);
}
});
} else {
if (idx == codeList.length - 1) {
console.log(obj);
commit('SET_DICT', obj)
commit("SET_DICT", obj);
}
}
})
});
},
//退出系统
LogOut({ commit, state }) {
return new Promise((resolve, reject) => {
logout(state.token).then(() => {
commit('SET_TOKEN', '')
commit('SET_USERDATA', null)
removeToken()
removeTime()
resolve()
}).catch(error => {
reject(error)
})
})
logout(state.token)
.then(() => {
commit("SET_TOKEN", "");
commit("SET_USERDATA", null);
removeToken();
removeTime();
resolve();
})
.catch((error) => {
reject(error);
});
});
},
// 前端 登出
FedLogOut({ commit, state }) {
return new Promise(resolve => {
commit('SET_TOKEN', '')
commit('SET_USERDATA', null)
removeToken()
removeTime()
removeUserId()
return new Promise((resolve) => {
commit("SET_TOKEN", "");
commit("SET_USERDATA", null);
removeToken();
removeTime();
removeUserId();
location.replace(process.env.VUE_APP_BASE_ROUTE);
resolve()
})
}
}
}
resolve();
});
},
},
};
function getLogisticsCode() {
return new Promise((resolve, reject) => {
getLogisticsCodeList().then(res => {
if (res.code === '200') {
resolve(res.data)
} else {
reject()
}
}).catch(err => {
console.log(err);
reject()
})
})
getLogisticsCodeList()
.then((res) => {
if (res.code === "200") {
resolve(res.data);
} else {
reject();
}
})
.catch((err) => {
console.log(err);
reject();
});
});
}
export default user
export default user;
......
......@@ -187,17 +187,17 @@ export default {
slot: true,
},
{
name: "物流运单编号",
value: "logisticsNo",
name: "提运单号",
value: "billNo",
width: "",
align: "left",
slot: true,
},
{
name: "提运单号",
value: "billNo",
name: "物流运单编号",
value: "logisticsNo",
width: "",
align: "left",
slot: true,
},
{
name: "电商企业代码",
......@@ -315,7 +315,7 @@ export default {
preNo: "",
};
this.originalLogisticsNo = "";
this.search(0);
// this.search(0);
},
//查询
search(val) {
......