|
|
|
import { getselfInfo } from "@/api/external";
|
|
|
|
import { Message } from "element-ui";
|
|
|
|
import { getcarid } from "@/api/jcy";
|
|
|
|
import router from "@/router";
|
|
|
|
let staticRouter = router.options.routes.filter((item) => item.isDiy == true)[0]
|
|
|
|
.children;
|
|
|
|
const selfPermission = {
|
|
|
|
state: {
|
|
|
|
token: localStorage.getItem("MSSM-LIAONING__TOKEN"),
|
|
|
|
permissionList: [],
|
|
|
|
routerList: [],
|
|
|
|
userData: {},
|
|
|
|
inspectorId: "",
|
|
|
|
usersort: '',
|
|
|
|
routershow:true
|
|
|
|
},
|
|
|
|
mutations: {
|
|
|
|
//动态按钮权限
|
|
|
|
SET_PERMISSIONLIST: (state, permissions) => {
|
|
|
|
permissions.forEach((item) => {
|
|
|
|
state.permissionList.push(item.menuPerms);
|
|
|
|
});
|
|
|
|
},
|
|
|
|
//动态路由
|
|
|
|
SET_ROUTER: (state, router) => {
|
|
|
|
state.routerList = router;
|
|
|
|
},
|
|
|
|
//用户信息
|
|
|
|
SET_USERDATA: (state, data) => {
|
|
|
|
state.userData = data;
|
|
|
|
},
|
|
|
|
// 分类
|
|
|
|
SET_USERSORT: (state, data) => {
|
|
|
|
state.usersort = data;
|
|
|
|
},
|
|
|
|
//某个id
|
|
|
|
SET_INSPECTORID: (state, id) => {
|
|
|
|
state.inspectorId = id;
|
|
|
|
},
|
|
|
|
// 是否缓存路由
|
|
|
|
SET_ROUTWESHOW: (state, id) => {
|
|
|
|
state.routershow = true;
|
|
|
|
},
|
|
|
|
SET_ROUTWESHOWFALS: (state, id) => {
|
|
|
|
state.routershow = false;
|
|
|
|
},
|
|
|
|
},
|
|
|
|
actions: {
|
|
|
|
//获取远程接口(路由、菜单、按钮权限)
|
|
|
|
GetPermission({ commit, state }) {
|
|
|
|
|
|
|
|
return new Promise((resolve, reject) => {
|
|
|
|
getselfInfo()
|
|
|
|
.then((res) => {
|
|
|
|
console.log(res);
|
|
|
|
if (res.message == '未知的token,请重新登录!' || res.status == 40002) {
|
|
|
|
setTimeout(() => {
|
|
|
|
// location.href = location.origin + "/login";
|
|
|
|
Message.error(res.message);
|
|
|
|
}, 2000);
|
|
|
|
}
|
|
|
|
let infoData = res.result;
|
|
|
|
// let query = {
|
|
|
|
// id: infoData.userDto.cardId,
|
|
|
|
// };
|
|
|
|
// getcarid(query).then((res) => {
|
|
|
|
// commit(
|
|
|
|
// "SET_INSPECTORID",
|
|
|
|
// res.result.length > 0 ? res.result[0].id : null
|
|
|
|
// );
|
|
|
|
// });
|
|
|
|
|
|
|
|
//存储用户信息
|
|
|
|
commit("SET_USERDATA", infoData.userDto);
|
|
|
|
let ismyobj = {
|
|
|
|
"稽查一处": "沈阳市",
|
|
|
|
"稽查二处": "大连市",
|
|
|
|
"稽查三处": "鞍山市",
|
|
|
|
"稽查四处": "抚顺市",
|
|
|
|
"稽查五处": "本溪市",
|
|
|
|
"稽查六处": "丹东市",
|
|
|
|
"稽查七处": "锦州市",
|
|
|
|
"稽查八处": "营口市",
|
|
|
|
"稽查九处": "阜新市",
|
|
|
|
"稽查十处": "辽阳市",
|
|
|
|
"稽查十一处": "铁岭市",
|
|
|
|
"稽查十二处": "朝阳市",
|
|
|
|
"稽查十三处": "盘锦市",
|
|
|
|
"稽查十四处": "葫芦岛市",
|
|
|
|
}
|
|
|
|
if (ismyobj[infoData.userDto.orgName]) {
|
|
|
|
commit('SET_USERSORT', ismyobj[infoData.userDto.orgName])
|
|
|
|
} else {
|
|
|
|
commit('SET_USERSORT', "")
|
|
|
|
}
|
|
|
|
//过滤出按钮权限字符
|
|
|
|
// let menuButton = infoData.menuButton.filter(
|
|
|
|
// (item) => item.appCode == "JCYGL"
|
|
|
|
// );
|
|
|
|
// commit("SET_PERMISSIONLIST", menuButton);
|
|
|
|
//过滤菜单
|
|
|
|
let menuTree = infoData.menuTree.filter(
|
|
|
|
(item) => item.appCode == "CPGL"
|
|
|
|
);
|
|
|
|
let fileTreeOut = filterTree(menuTree[0].childMenuList, []);
|
|
|
|
// let fileTreeOut = [];
|
|
|
|
|
|
|
|
// menuTree[0].childMenuList.forEach((item) => {
|
|
|
|
// staticRouter.forEach((router, index) => {
|
|
|
|
// if (item.menuUrl == router.path) {
|
|
|
|
// fileTreeOut.push(router);
|
|
|
|
// }
|
|
|
|
// });
|
|
|
|
// });
|
|
|
|
|
|
|
|
fileTreeOut[0].meta.affix = true
|
|
|
|
commit("SET_ROUTER", fileTreeOut);
|
|
|
|
resolve(fileTreeOut.length > 0 ? fileTreeOut[0].path : []);
|
|
|
|
})
|
|
|
|
.catch((error) => {
|
|
|
|
reject(error);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
},
|
|
|
|
},
|
|
|
|
};
|
|
|
|
|
|
|
|
function filterTree(tree, result) {
|
|
|
|
tree.forEach((item) => {
|
|
|
|
staticRouter.forEach((router, index) => {
|
|
|
|
if (item.menuUrl == router.path) {
|
|
|
|
result.push(router);
|
|
|
|
}
|
|
|
|
if (item.childMenuList != null) {
|
|
|
|
filterTree(tree[index].childMenuList, result[index].children);
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
export default selfPermission;
|