2025-01-28 15:25:35 +08:00
|
|
|
|
import { createStore } from "vuex";
|
|
|
|
|
|
import router from "@/router/index";
|
|
|
|
|
|
import dayjs from "dayjs";
|
|
|
|
|
|
import { terminalType } from "@/utils/index";
|
|
|
|
|
|
|
|
|
|
|
|
console.log("process.env.NODE_ENV", process.env.NODE_ENV);
|
|
|
|
|
|
export default createStore({
|
|
|
|
|
|
state: {
|
2025-02-11 21:47:01 +08:00
|
|
|
|
// token:
|
|
|
|
|
|
// process.env.NODE_ENV !== "development"
|
|
|
|
|
|
// ? terminalType === "Browser" && localStorage.getItem("token")
|
|
|
|
|
|
// : "",
|
|
|
|
|
|
token: terminalType === "Browser" && localStorage.getItem("token"),
|
|
|
|
|
|
// userInfo:
|
|
|
|
|
|
// process.env.NODE_ENV !== "development"
|
|
|
|
|
|
// ? terminalType === "Browser" && localStorage.getItem("userInfo")
|
|
|
|
|
|
// ? JSON.parse(localStorage.getItem("userInfo"))
|
|
|
|
|
|
// : {}
|
|
|
|
|
|
// : {
|
|
|
|
|
|
// account: "csht003",
|
|
|
|
|
|
// userName: "csht003",
|
|
|
|
|
|
// imgUrl:
|
|
|
|
|
|
// "https://thirdwx.qlogo.cn/mmopen/vi_32/t5O6btVlibCehoxtZWXc4AYefp92pxGWorCNskBo6hLsj3MJclkPpyoI0d5OW5QDsqfanS5IdicfPfEvYvQ6S7uQ/132",
|
|
|
|
|
|
// },
|
2025-01-28 15:25:35 +08:00
|
|
|
|
userInfo:
|
2025-02-11 21:47:01 +08:00
|
|
|
|
terminalType === "Browser" && localStorage.getItem("userInfo")
|
|
|
|
|
|
? JSON.parse(localStorage.getItem("userInfo"))
|
|
|
|
|
|
: {},
|
2025-01-28 15:25:35 +08:00
|
|
|
|
authorityList:
|
|
|
|
|
|
process.env.NODE_ENV !== "development"
|
|
|
|
|
|
? terminalType === "Browser" && localStorage.getItem("authorityList")
|
|
|
|
|
|
? JSON.parse(localStorage.getItem("authorityList"))
|
|
|
|
|
|
: []
|
|
|
|
|
|
: // : [{ starttime: 0, endtime: Number.MAX_SAFE_INTEGER, mid: 2 }] // mockData
|
|
|
|
|
|
[1212],
|
|
|
|
|
|
// endtime 权限结束时间 integer(int64) mid 权限id string starttime 权限开始时间 integer(int64)
|
|
|
|
|
|
interactMsgObj: {
|
|
|
|
|
|
retainMsgNum: 100, // 保留消息条数
|
|
|
|
|
|
// 直播间互动消息
|
|
|
|
|
|
msgListIds: [], // 所有互动消息的id集合
|
|
|
|
|
|
msgListIdObj: {}, // 所有互动消息,key为互动消息id,value为消息对象
|
|
|
|
|
|
replyBasicInformMsgObj: {}, // 所有回复消息的集合
|
|
|
|
|
|
isScrollToBottom: true, // 用户互动区滚动条是否滚动到底部
|
|
|
|
|
|
temUserInteractMsgList: [], // 用户互动区滚动条没有滚动到底部,将其他用户新发的互动消息暂时存起来
|
|
|
|
|
|
temUserInteractShowNum: 0, // 用户互动区需要展示还未展示的消息数
|
|
|
|
|
|
userInteractMsgList: [], // 用户互动消息
|
|
|
|
|
|
isTgScrollToBottom: true, // 讲师互动区滚动条是否滚动到底部
|
|
|
|
|
|
temTgInteractMsgList: [], // 讲师区滚动条没有滚动到底部,将其他用户新发的互动消息暂时存起来
|
|
|
|
|
|
temTgInteractShowNum: 0, // 讲师需要展示还未展示的消息数
|
|
|
|
|
|
tgInteractMsgList: [], // 讲师互动消息
|
|
|
|
|
|
newTreeMsg: [], // 最新的三条互动消息
|
|
|
|
|
|
msgTimeList: [], // 互动区时间汇总
|
|
|
|
|
|
tgMsgTimeList: [], // 投顾互动区时间汇总
|
|
|
|
|
|
msgTimeObj: {}, // 用户互动区区消息以发言时间为key,value为消息对象
|
|
|
|
|
|
tgMsgTimeObj: {}, // 讲师互动区消息以发言时间为key,value为消息对象
|
|
|
|
|
|
hasHisMsg: true, // 用户是否有历史消息
|
|
|
|
|
|
tgHasHisMsg: true, // 讲师互动区否有历史消息
|
|
|
|
|
|
},
|
|
|
|
|
|
forbidLogin: false, // 是否禁止用户登录
|
|
|
|
|
|
},
|
|
|
|
|
|
getters: {
|
|
|
|
|
|
authorityIdList: (state) => {
|
|
|
|
|
|
const now = Date.now();
|
|
|
|
|
|
return state.authorityList
|
|
|
|
|
|
.filter((item) => {
|
|
|
|
|
|
return item.starttime < now && item.endtime > now;
|
|
|
|
|
|
})
|
|
|
|
|
|
.map((item) => item.mid);
|
|
|
|
|
|
},
|
|
|
|
|
|
},
|
|
|
|
|
|
mutations: {
|
|
|
|
|
|
setIsScrollToBottom(state, payload) {
|
|
|
|
|
|
let key = payload.isTg ? "isTgScrollToBottom" : "isScrollToBottom";
|
|
|
|
|
|
state.interactMsgObj[key] = payload.data;
|
|
|
|
|
|
},
|
|
|
|
|
|
setReplyMsgObj(state, payload) {
|
|
|
|
|
|
state.interactMsgObj.replyBasicInformMsgObj[payload.id] = payload;
|
|
|
|
|
|
},
|
|
|
|
|
|
setInteractMsg(state, payload) {
|
|
|
|
|
|
let isST = state.interactMsgObj.isScrollToBottom; // 讲师互动区是否滚动到底部了
|
|
|
|
|
|
let isTgST = state.interactMsgObj.isTgScrollToBottom; // 用户互动区是否滚动到底部了
|
|
|
|
|
|
let msgArr = Array.isArray(payload.data) ? payload.data : [payload.data];
|
|
|
|
|
|
let tgMsgArr = [];
|
|
|
|
|
|
|
|
|
|
|
|
msgArr.forEach((item) => {
|
|
|
|
|
|
let chatTime = dayjs(item.createTime).format("MM-DD HH:mm");
|
|
|
|
|
|
item.show =
|
|
|
|
|
|
(!item.replyBasic && item.isOpen !== 2) ||
|
2025-02-15 17:49:35 +08:00
|
|
|
|
state.userInfo.userId === item.phone ||
|
2025-01-28 15:25:35 +08:00
|
|
|
|
(item.replyBasic &&
|
|
|
|
|
|
(item.replyBasic.isOpen === 1 ||
|
2025-02-15 17:49:35 +08:00
|
|
|
|
state.userInfo.userId === item.replyBasic.userId));
|
2025-01-28 15:25:35 +08:00
|
|
|
|
if (payload.type === 1) {
|
|
|
|
|
|
// 新消息
|
|
|
|
|
|
// 公开的或者是本人发的文本消息
|
|
|
|
|
|
if (
|
|
|
|
|
|
((item.userId && item.isOpen === 1) ||
|
2025-02-15 17:49:35 +08:00
|
|
|
|
item.phone === state.userInfo.userId) &&
|
2025-01-28 15:25:35 +08:00
|
|
|
|
item.type === 1
|
|
|
|
|
|
) {
|
|
|
|
|
|
state.interactMsgObj.newTreeMsg.push(item);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 用户互动区最新消息数量提醒
|
|
|
|
|
|
if (item.show && !isST) state.interactMsgObj.temUserInteractShowNum++;
|
|
|
|
|
|
// 讲师互动区新消息数量提醒
|
|
|
|
|
|
if (item.show && !isTgST) state.interactMsgObj.temTgInteractShowNum++;
|
|
|
|
|
|
|
|
|
|
|
|
// 将全部评论按1s为维度进行汇总
|
|
|
|
|
|
if (
|
|
|
|
|
|
!state.interactMsgObj.msgTimeList.includes(chatTime) &&
|
|
|
|
|
|
item.show
|
|
|
|
|
|
) {
|
|
|
|
|
|
state.interactMsgObj.msgTimeList.push(chatTime);
|
|
|
|
|
|
item.chatTime = chatTime;
|
|
|
|
|
|
state.interactMsgObj.msgTimeObj[chatTime] = item;
|
|
|
|
|
|
} else {
|
|
|
|
|
|
delete item.chatTime;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 将讲师评论按1s为维度进行汇总
|
|
|
|
|
|
if (
|
|
|
|
|
|
!state.interactMsgObj.tgMsgTimeList.includes(chatTime) &&
|
|
|
|
|
|
item.show
|
|
|
|
|
|
) {
|
|
|
|
|
|
state.interactMsgObj.tgMsgTimeList.push(chatTime);
|
|
|
|
|
|
item.tgChatTime = chatTime;
|
|
|
|
|
|
state.interactMsgObj.tgMsgTimeObj[chatTime] = item;
|
|
|
|
|
|
} else {
|
|
|
|
|
|
delete item.tgChatTime;
|
|
|
|
|
|
}
|
|
|
|
|
|
} else {
|
|
|
|
|
|
// 历史
|
|
|
|
|
|
if (payload.isTg) {
|
|
|
|
|
|
// 将讲师评论按1s为维度进行汇总
|
|
|
|
|
|
if (
|
|
|
|
|
|
!state.interactMsgObj.tgMsgTimeList.includes(chatTime) &&
|
|
|
|
|
|
item.show
|
|
|
|
|
|
) {
|
|
|
|
|
|
state.interactMsgObj.tgMsgTimeList.push(chatTime);
|
|
|
|
|
|
item.tgChatTime = chatTime;
|
|
|
|
|
|
state.interactMsgObj.tgMsgTimeObj[chatTime] = item;
|
|
|
|
|
|
} else if (
|
|
|
|
|
|
state.interactMsgObj.tgMsgTimeList.includes(chatTime) &&
|
|
|
|
|
|
item.show
|
|
|
|
|
|
) {
|
|
|
|
|
|
item.tgChatTime = chatTime;
|
|
|
|
|
|
delete state.interactMsgObj.tgMsgTimeObj[chatTime].tgChatTime;
|
|
|
|
|
|
state.interactMsgObj.tgMsgTimeObj[chatTime] = item;
|
|
|
|
|
|
}
|
|
|
|
|
|
} else {
|
|
|
|
|
|
// 将全部评论按1s为维度进行汇总
|
|
|
|
|
|
if (
|
|
|
|
|
|
!state.interactMsgObj.msgTimeList.includes(chatTime) &&
|
|
|
|
|
|
item.show
|
|
|
|
|
|
) {
|
|
|
|
|
|
state.interactMsgObj.msgTimeList.push(chatTime);
|
|
|
|
|
|
item.chatTime = chatTime;
|
|
|
|
|
|
state.interactMsgObj.msgTimeObj[chatTime] = item;
|
|
|
|
|
|
} else if (
|
|
|
|
|
|
state.interactMsgObj.msgTimeList.includes(chatTime) &&
|
|
|
|
|
|
item.show
|
|
|
|
|
|
) {
|
|
|
|
|
|
item.chatTime = chatTime;
|
|
|
|
|
|
delete state.interactMsgObj.msgTimeObj[chatTime].chatTime;
|
|
|
|
|
|
state.interactMsgObj.msgTimeObj[chatTime] = item;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
state.interactMsgObj.msgListIds.push(item.id);
|
|
|
|
|
|
state.interactMsgObj.msgListIdObj[item.id] = item;
|
|
|
|
|
|
|
|
|
|
|
|
// 筛选出讲师的发言
|
|
|
|
|
|
if (item.advisorId) {
|
|
|
|
|
|
tgMsgArr.push(item);
|
|
|
|
|
|
}
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
if (payload.type === 1) {
|
|
|
|
|
|
// 新消息
|
|
|
|
|
|
if (isST) {
|
|
|
|
|
|
// 用户互动区新消息处理
|
|
|
|
|
|
state.interactMsgObj.userInteractMsgList =
|
|
|
|
|
|
state.interactMsgObj.userInteractMsgList.concat(msgArr);
|
|
|
|
|
|
if (
|
|
|
|
|
|
state.interactMsgObj.userInteractMsgList.length >
|
|
|
|
|
|
state.interactMsgObj.retainMsgNum
|
|
|
|
|
|
) {
|
|
|
|
|
|
state.interactMsgObj.userInteractMsgList =
|
|
|
|
|
|
state.interactMsgObj.userInteractMsgList.slice(
|
|
|
|
|
|
state.interactMsgObj.userInteractMsgList.length -
|
|
|
|
|
|
state.interactMsgObj.retainMsgNum
|
|
|
|
|
|
);
|
|
|
|
|
|
state.interactMsgObj.msgListIds =
|
|
|
|
|
|
state.interactMsgObj.msgListIds.slice(
|
|
|
|
|
|
state.interactMsgObj.msgListIds.length -
|
|
|
|
|
|
state.interactMsgObj.retainMsgNum
|
|
|
|
|
|
);
|
|
|
|
|
|
state.interactMsgObj.hasHisMsg = true;
|
|
|
|
|
|
state.interactMsgObj.msgTimeList = [];
|
|
|
|
|
|
state.interactMsgObj.msgTimeObj = {};
|
|
|
|
|
|
state.interactMsgObj.userInteractMsgList.forEach((item) => {
|
|
|
|
|
|
// 互动消息按秒重新归类
|
|
|
|
|
|
const chatTime = dayjs(item.createTime).format("MM-DD HH:mm");
|
|
|
|
|
|
if (
|
|
|
|
|
|
!state.interactMsgObj.msgTimeList.includes(chatTime) &&
|
|
|
|
|
|
item.show
|
|
|
|
|
|
) {
|
|
|
|
|
|
state.interactMsgObj.msgTimeList.push(chatTime);
|
|
|
|
|
|
item.chatTime = chatTime;
|
|
|
|
|
|
state.interactMsgObj.msgTimeObj[chatTime] = item;
|
|
|
|
|
|
} else {
|
|
|
|
|
|
delete item.chatTime;
|
|
|
|
|
|
}
|
|
|
|
|
|
});
|
|
|
|
|
|
}
|
|
|
|
|
|
} else {
|
|
|
|
|
|
state.interactMsgObj.temUserInteractMsgList =
|
|
|
|
|
|
state.interactMsgObj.temUserInteractMsgList.concat(msgArr);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (isTgST) {
|
|
|
|
|
|
// 讲师互动区新消息处理
|
|
|
|
|
|
state.interactMsgObj.tgInteractMsgList =
|
|
|
|
|
|
state.interactMsgObj.tgInteractMsgList.concat(tgMsgArr);
|
|
|
|
|
|
if (
|
|
|
|
|
|
state.interactMsgObj.tgInteractMsgList.length >
|
|
|
|
|
|
state.interactMsgObj.retainMsgNum
|
|
|
|
|
|
) {
|
|
|
|
|
|
state.interactMsgObj.tgInteractMsgList =
|
|
|
|
|
|
state.interactMsgObj.tgInteractMsgList.slice(
|
|
|
|
|
|
state.interactMsgObj.tgInteractMsgList.length -
|
|
|
|
|
|
state.interactMsgObj.retainMsgNum
|
|
|
|
|
|
);
|
|
|
|
|
|
state.interactMsgObj.tgHasHisMsg = true;
|
|
|
|
|
|
state.interactMsgObj.tgMsgTimeList = [];
|
|
|
|
|
|
state.interactMsgObj.tgMsgTimeObj = {};
|
|
|
|
|
|
state.interactMsgObj.tgInteractMsgList.forEach((item) => {
|
|
|
|
|
|
// 互动消息按秒重新归类
|
|
|
|
|
|
const chatTime = dayjs(item.createTime).format("MM-DD HH:mm");
|
|
|
|
|
|
if (
|
|
|
|
|
|
!state.interactMsgObj.tgMsgTimeList.includes(chatTime) &&
|
|
|
|
|
|
item.show
|
|
|
|
|
|
) {
|
|
|
|
|
|
state.interactMsgObj.tgMsgTimeList.push(chatTime);
|
|
|
|
|
|
item.tgChatTime = chatTime;
|
|
|
|
|
|
state.interactMsgObj.tgMsgTimeObj[chatTime] = item;
|
|
|
|
|
|
} else {
|
|
|
|
|
|
delete item.tgChatTime;
|
|
|
|
|
|
}
|
|
|
|
|
|
});
|
|
|
|
|
|
}
|
|
|
|
|
|
} else {
|
|
|
|
|
|
state.interactMsgObj.temTgInteractMsgList =
|
|
|
|
|
|
state.interactMsgObj.temTgInteractMsgList.concat(tgMsgArr);
|
|
|
|
|
|
}
|
|
|
|
|
|
} else {
|
|
|
|
|
|
// 历史消息
|
|
|
|
|
|
if (payload.isTg) {
|
|
|
|
|
|
state.interactMsgObj.tgHasHisMsg = payload.hasNext;
|
|
|
|
|
|
state.interactMsgObj.tgInteractMsgList = tgMsgArr
|
|
|
|
|
|
.reverse()
|
|
|
|
|
|
.concat(state.interactMsgObj.tgInteractMsgList);
|
|
|
|
|
|
} else {
|
|
|
|
|
|
state.interactMsgObj.hasHisMsg = payload.hasNext;
|
|
|
|
|
|
state.interactMsgObj.userInteractMsgList = msgArr
|
|
|
|
|
|
.reverse()
|
|
|
|
|
|
.concat(state.interactMsgObj.userInteractMsgList);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
interactMsgMerge(state, payload) {
|
|
|
|
|
|
let key1, key2, key3, numKey, timeKey, childTimeKey, msgTimeObjKey;
|
|
|
|
|
|
if (payload.isTg) {
|
|
|
|
|
|
key1 = "tgInteractMsgList";
|
|
|
|
|
|
key2 = "temTgInteractMsgList";
|
|
|
|
|
|
key3 = "tgHasHisMsg";
|
|
|
|
|
|
numKey = "temTgInteractShowNum";
|
|
|
|
|
|
timeKey = "tgMsgTimeList";
|
|
|
|
|
|
childTimeKey = "tgChatTime";
|
|
|
|
|
|
msgTimeObjKey = "tgMsgTimeObj";
|
|
|
|
|
|
} else {
|
|
|
|
|
|
key1 = "userInteractMsgList";
|
|
|
|
|
|
key2 = "temUserInteractMsgList";
|
|
|
|
|
|
key3 = "hasHisMsg";
|
|
|
|
|
|
numKey = "temUserInteractShowNum";
|
|
|
|
|
|
timeKey = "msgTimeList";
|
|
|
|
|
|
childTimeKey = "chatTime";
|
|
|
|
|
|
msgTimeObjKey = "msgTimeObj";
|
|
|
|
|
|
}
|
|
|
|
|
|
state.interactMsgObj[key1] = state.interactMsgObj[key1].concat(
|
|
|
|
|
|
state.interactMsgObj[key2]
|
|
|
|
|
|
);
|
|
|
|
|
|
if (
|
|
|
|
|
|
state.interactMsgObj[key1].length > state.interactMsgObj.retainMsgNum
|
|
|
|
|
|
) {
|
|
|
|
|
|
state.interactMsgObj[key1] = state.interactMsgObj[key1].slice(
|
|
|
|
|
|
state.interactMsgObj[key1].length - state.interactMsgObj.retainMsgNum
|
|
|
|
|
|
);
|
|
|
|
|
|
state.interactMsgObj.msgListIds = state.interactMsgObj.msgListIds.slice(
|
|
|
|
|
|
state.interactMsgObj.msgListIds.length -
|
|
|
|
|
|
state.interactMsgObj.retainMsgNum
|
|
|
|
|
|
);
|
|
|
|
|
|
state.interactMsgObj[key3] = true;
|
|
|
|
|
|
|
|
|
|
|
|
state.interactMsgObj[timeKey] = [];
|
|
|
|
|
|
state.interactMsgObj[msgTimeObjKey] = {};
|
|
|
|
|
|
state.interactMsgObj[key1].forEach((item) => {
|
|
|
|
|
|
let chatTime = dayjs(item.createTime).format("MM-DD HH:mm");
|
|
|
|
|
|
if (!state.interactMsgObj[timeKey].includes(chatTime) && item.show) {
|
|
|
|
|
|
state.interactMsgObj[timeKey].push(chatTime);
|
|
|
|
|
|
item[childTimeKey] = chatTime;
|
|
|
|
|
|
state.interactMsgObj[msgTimeObjKey][chatTime] = item;
|
|
|
|
|
|
} else {
|
|
|
|
|
|
delete item[childTimeKey];
|
|
|
|
|
|
}
|
|
|
|
|
|
});
|
|
|
|
|
|
}
|
|
|
|
|
|
state.interactMsgObj[key2] = [];
|
|
|
|
|
|
state.interactMsgObj[numKey] = 0;
|
|
|
|
|
|
},
|
|
|
|
|
|
resetInteractMsgObj(state) {
|
|
|
|
|
|
state.interactMsgObj = {
|
|
|
|
|
|
retainMsgNum: 100, // 保留消息条数
|
|
|
|
|
|
// 直播间互动消息
|
|
|
|
|
|
msgListIds: [], // 所有互动消息的id集合
|
|
|
|
|
|
msgListIdObj: {}, // 所有互动消息,key为互动消息id,value为消息对象
|
|
|
|
|
|
replyBasicInformMsgObj: {}, // 所有回复消息的集合
|
|
|
|
|
|
isScrollToBottom: true, // 用户互动区滚动条是否滚动到底部
|
|
|
|
|
|
temUserInteractMsgList: [], // 用户互动区滚动条没有滚动到底部,将其他用户新发的互动消息暂时存起来
|
|
|
|
|
|
temUserInteractShowNum: 0, // 用户互动区需要展示还未展示的消息数
|
|
|
|
|
|
userInteractMsgList: [], // 用户互动消息
|
|
|
|
|
|
isTgScrollToBottom: true, // 讲师互动区滚动条是否滚动到底部
|
|
|
|
|
|
temTgInteractMsgList: [], // 讲师区滚动条没有滚动到底部,将其他用户新发的互动消息暂时存起来
|
|
|
|
|
|
temTgInteractShowNum: 0, // 讲师需要展示还未展示的消息数
|
|
|
|
|
|
tgInteractMsgList: [], // 讲师互动消息
|
|
|
|
|
|
newTreeMsg: [], // 最新的三条互动消息
|
|
|
|
|
|
msgTimeList: [], // 互动区时间汇总
|
|
|
|
|
|
tgMsgTimeList: [], // 投顾互动区时间汇总
|
|
|
|
|
|
msgTimeObj: {}, // 用户互动区区消息以发言时间为key,value为消息对象
|
|
|
|
|
|
tgMsgTimeObj: {}, // 讲师互动区消息以发言时间为key,value为消息对象
|
|
|
|
|
|
hasHisMsg: true, // 用户是否有历史消息
|
|
|
|
|
|
tgHasHisMsg: true, // 讲师互动区否有历史消息
|
|
|
|
|
|
};
|
|
|
|
|
|
},
|
|
|
|
|
|
setToken(state, payload) {
|
|
|
|
|
|
localStorage.setItem("token", payload);
|
|
|
|
|
|
state.token = payload;
|
|
|
|
|
|
},
|
|
|
|
|
|
setUserInfo(state, payload) {
|
|
|
|
|
|
localStorage.setItem("userInfo", JSON.stringify(payload));
|
|
|
|
|
|
state.userInfo = payload;
|
|
|
|
|
|
},
|
|
|
|
|
|
setAuthorityList(state, payload) {
|
|
|
|
|
|
localStorage.setItem("authorityList", JSON.stringify(payload));
|
|
|
|
|
|
state.authorityList = payload;
|
|
|
|
|
|
},
|
|
|
|
|
|
outLogin(state) {
|
|
|
|
|
|
state.token = "";
|
|
|
|
|
|
state.userInfo = {};
|
|
|
|
|
|
localStorage.clear();
|
|
|
|
|
|
router.push("/");
|
|
|
|
|
|
},
|
|
|
|
|
|
setForbidLogin(state) {
|
|
|
|
|
|
state.forbidLogin = true;
|
|
|
|
|
|
},
|
|
|
|
|
|
},
|
|
|
|
|
|
actions: {},
|
|
|
|
|
|
modules: {},
|
|
|
|
|
|
});
|