fix(系统设置): 超级管理员项目列表跳转权限问题
--bug=1022460 --user=李玉号 【系统设置】超级管理员权限的用户在系统设置 - 工作空间 - 项目管理列表,点击项目名称,提示没有权限 https://www.tapd.cn/55049933/s/1331705
This commit is contained in:
parent
e5733db8c1
commit
30260b1817
|
@ -108,3 +108,7 @@ export function updateSeleniumServer(data) {
|
|||
export function modifyUserByResourceId(resourceId) {
|
||||
return get(`/user/update/current-by-resource/${resourceId}`);
|
||||
}
|
||||
|
||||
export function isSuperUser(userId) {
|
||||
return get(`/user/is/super/${userId}`);
|
||||
}
|
||||
|
|
|
@ -195,6 +195,7 @@ import {PROJECT_CONFIGS} from "metersphere-frontend/src/components/search/search
|
|||
import MsRolesTag from "metersphere-frontend/src/components/MsRolesTag";
|
||||
import MsInstructionsIcon from "metersphere-frontend/src/components/MsInstructionsIcon";
|
||||
import AddMember from "../../common/AddMember";
|
||||
import {isSuperUser} from "metersphere-frontend/src/api/user.js";
|
||||
import {
|
||||
addProjectMember,
|
||||
delProjectMember,
|
||||
|
@ -308,21 +309,30 @@ export default {
|
|||
let {listObject} = res.data;
|
||||
this.memberLineData = listObject;
|
||||
let arr = this.memberLineData.filter(item => item.id === getCurrentUserId());
|
||||
if (arr <= 0) {
|
||||
this.$warning(this.$t("commons.project_permission"));
|
||||
return;
|
||||
}
|
||||
// 跳转的时候更新用户的last_project_id
|
||||
sessionStorage.setItem(PROJECT_ID, row.id);
|
||||
const loading = fullScreenLoading(this);
|
||||
switchProject({id: getCurrentUserId(), lastProjectId: row.id}).then(() => {
|
||||
this.$router.push('/track/home').then(() => {
|
||||
location.reload();
|
||||
stopFullScreenLoading(loading);
|
||||
if (arr.length > 0) {
|
||||
this.doJump(row);
|
||||
} else {
|
||||
isSuperUser(getCurrentUserId()).then(r => {
|
||||
if (r && r.data) {
|
||||
this.doJump(row);
|
||||
} else {
|
||||
this.$warning(this.$t("commons.project_permission"));
|
||||
}
|
||||
});
|
||||
})
|
||||
}
|
||||
});
|
||||
},
|
||||
doJump(row) {
|
||||
// 跳转的时候更新用户的last_project_id
|
||||
sessionStorage.setItem(PROJECT_ID, row.id);
|
||||
const loading = fullScreenLoading(this);
|
||||
switchProject({id: getCurrentUserId(), lastProjectId: row.id}).then(() => {
|
||||
this.$router.push('/track/home').then(() => {
|
||||
location.reload();
|
||||
stopFullScreenLoading(loading);
|
||||
});
|
||||
})
|
||||
},
|
||||
getMaintainerOptions() {
|
||||
getCurrentProjectUserList().then(res => {
|
||||
this.userFilters = res.data.map(u => {
|
||||
|
|
Loading…
Reference in New Issue