只读消息包括员工退出企业、员工注销账号的消息;设置(取消)企业管理员身份、企业解雇、所属部门被删除、企业解散的消息
企业邀请加入的消息在同意后会加入到企业中,反之拒绝
关于管理员的只读消息在处理后会有employee和admin的身份变化
企业解雇的消息确认后,身份会变为user
所属部门被删除只需要确认
企业解散的消息确认后,身份会变为user
注:关于身份变化,其实在收到消息时身份就已经发生变化,只是在localStorage中还是原来的身份,通过消息处理进行改变localStorage中的身份变化,便于在用户没有重新登录时,就可以获取到新身份
通过正则表达式匹配来判断收到的只读消息类型,再进行相应处理
dealRead(id, result, fromId, fromName, theme) {
dealRead(id, result).then((res) => {
const dealRes = res.data;
console.log(theme);
if (dealRes.code == 200) {
this.$message.success("已处理该消息!");
var reg1 = new RegExp("同意"); //同意加入企业
var reg2 = new RegExp("开除"); //被企业开除
var reg3 = new RegExp("设置"); //设置为管理员
var reg4 = new RegExp("移除"); //管理员被移除
var reg5 = new RegExp("移出"); //企业注销
if (theme.match(reg1)) {
this.setCompanyId(fromId);
this.setCompanyName(fromName);
let roles = [{ id: "employee" }];
this.setRoles(roles);
const route = "/dashboard";
this.$refreshPage(route);
} else if (theme.match(reg2) || theme.match(reg5)) {
this.setCompanyId("");
this.setCompanyName("");
let roles = [{ id: "user" }];
this.setRoles(roles);
const noticeRoute = "/notice";
this.$refreshPage(noticeRoute);
const route = "/dashboard";
this.$refreshPage(route);
} else if (theme.match(reg3)) {
let roles = [{ id: "admin" }];
this.setRoles(roles);
const route = "/notice";
this.$refreshPage(route);
} else if (theme.match(reg4)) {
let roles = [{ id: "employee" }];
this.setRoles(roles);
const route = "/notice";
this.$refreshPage(route);
}
this.searchUserNotice();
this.countUnreadNotice();
}
});
},
版权声明:本文为qq_43502432原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。