import router from "@/router"; import { MessageBox } from "element-ui"; import { login, logout, getOrganizations } from "@/api/login"; import { getToken, setToken, removeToken } from "@/utils/auth"; import { isHttp, isEmpty } from "@/utils/validate"; import defAva from "@/assets/images/profile.jpg"; const user = { state: { token: getToken(), id: "", name: "", nickName: "", avatar: "", roles: [], permissions: [], }, mutations: { SET_TOKEN: (state, token) => { state.token = token; }, SET_ID: (state, id) => { state.id = id; }, SET_NAME: (state, name) => { state.name = name; }, SET_NICK_NAME: (state, nickName) => { state.nickName = nickName; }, SET_AVATAR: (state, avatar) => { state.avatar = avatar; }, SET_ROLES: (state, roles) => { state.roles = roles; }, SET_PERMISSIONS: (state, permissions) => { state.permissions = permissions; }, }, actions: { // 登录 Login({ commit }, userInfo) { const username = userInfo.username.trim(); const password = userInfo.password; // const code = userInfo.code // const uuid = userInfo.uuid const HOrgName = userInfo.HOrgName; return new Promise((resolve, reject) => { login(username, password, HOrgName) .then((res) => { sessionStorage["OrganizationID"] = userInfo.HOrgName; sessionStorage["Organization"] = userInfo.Organization; sessionStorage["HTranSlate"] = userInfo.HTranSlate; sessionStorage["HCusName"] = userInfo.HCusName; sessionStorage["HLogoLabel"] = userInfo.HLogoLabel; sessionStorage["HMenuLabel"] = userInfo.HMenuLabel; sessionStorage["HCloudUserName"] = res.data[0].HCloudUserName; //金蝶云账号 sessionStorage["HCloudUserPsd"] = res.data[0].HCloudUserPsd; sessionStorage["HMaker"] = res.data[0].Czymc; sessionStorage["HUserName"] = res.data[0].Czymc; sessionStorage["HBillerID"] = res.data[0].HK3UserID; sessionStorage["SourceFlag"] = false; sessionStorage["HKeeperID"] = res.data[0].HKeeperID; sessionStorage["HKeeper"] = res.data[0].HKeeper; sessionStorage["HSecManagerID"] = res.data[0].HSecManagerID; sessionStorage["HSecManager"] = res.data[0].HSecManager; sessionStorage["HSellManID"] = res.data[0].HSellManID; sessionStorage["HSellMan"] = res.data[0].HSellMan; sessionStorage["HDeptID"] = res.data[0].HDeptID; sessionStorage["HDept"] = res.data[0].HDept; sessionStorage["HWHID"] = res.data[0].HWhID; sessionStorage["HWHName"] = res.data[0].HWHName; sessionStorage["HSPID"] = res.data[0].HSPID; sessionStorage["HSPName"] = res.data[0].HSPName; sessionStorage["HSupID"] = res.data[0].HSupID; sessionStorage["HSupName"] = res.data[0].HSupName; sessionStorage["Czmm"] = res.data[0].Czmm; sessionStorage["Czybm"] = res.data[0].Czybm; sessionStorage["HEmpID"] = res.data[0].HEmpID; sessionStorage["HEmpNumber"] = res.data[0].HEmpNumber; sessionStorage["HEmpName"] = res.data[0].HEmpName; sessionStorage["HGroup"] = res.data[0].HGroup; sessionStorage["HGroupID"] = res.data[0].HGroupID; sessionStorage["HProc"] = res.data[0].HProc; sessionStorage["HProcNo"] = res.data[0].HProcNo; sessionStorage["HSource"] = res.data[0].HSource; sessionStorage["HSourceID"] = res.data[0].HSourceID; sessionStorage["HWorkCenter"] = res.data[0].HWorkCenter; sessionStorage["HWorkCenterID"] = res.data[0].HWorkCenterID; sessionStorage["HProcName"] = res.data[0].HProcName; sessionStorage["HProcID"] = res.data[0].HProcID; sessionStorage["HCheckEmpID"] = res.data[0].HCheckEmpID; sessionStorage["HCheckEmpName"] = res.data[0].HCheckEmpName; sessionStorage["login"] = "login"; sessionStorage["HType"] = "PC"; setToken(res.token); commit("SET_TOKEN", res.token); resolve(); }) .catch((error) => { reject(error); }); }); }, // 获取用户信息 GetInfo({ commit, state }) { return new Promise((resolve, reject) => { commit("SET_NICK_NAME", sessionStorage["HUserName"]); getOrganizations().then((res) => { if (res.count == 1) { const stringifiedItems = JSON.stringify(res.data); sessionStorage.setItem("organizationList", stringifiedItems); } }); resolve(); }); }, // 退出系统 LogOut({ commit, state }) { return new Promise((resolve, reject) => { logout(state.token) .then(() => { commit("SET_TOKEN", ""); commit("SET_ROLES", []); commit("SET_PERMISSIONS", []); removeToken(); resolve(); }) .catch((error) => { reject(error); }); }); }, // 前端 登出 FedLogOut({ commit }) { return new Promise((resolve) => { commit("SET_TOKEN", ""); removeToken(); resolve(); }); }, }, }; export default user;