diff --git a/backend/src/main/resources/permission.json b/backend/src/main/resources/permission.json
index f49a859cd5..aeb4b16c4b 100644
--- a/backend/src/main/resources/permission.json
+++ b/backend/src/main/resources/permission.json
@@ -858,11 +858,11 @@
},
{
"id": "PROJECT_PERFORMANCE_TEST",
- "name": "性能测试"
+ "name": "测试"
},
{
"id": "PROJECT_PERFORMANCE_REPORT",
- "name": "性能测试报告"
+ "name": "报告"
}
]
}
\ No newline at end of file
diff --git a/frontend/src/business/components/settings/system/group/EditPermission.vue b/frontend/src/business/components/settings/system/group/EditPermission.vue
index 7888ec332c..94365a327a 100644
--- a/frontend/src/business/components/settings/system/group/EditPermission.vue
+++ b/frontend/src/business/components/settings/system/group/EditPermission.vue
@@ -16,7 +16,8 @@
label="功能菜单"
width="180">
- {{ userGroupType[scope.row.type] ? userGroupType[scope.row.type] : scope.row.type }}
+ {{ userGroupType[scope.row.type] ? userGroupType[scope.row.type] : scope.row.type }}
+ {{_computedMenuName(scope.row.resource)}}
import GroupOperator from "@/business/components/settings/system/group/GroupOperator";
import GroupPermission from "@/business/components/settings/system/group/GroupPermission";
-import {USER_GROUP_SCOPE} from "@/common/js/table-constants";
+import {PROJECT_GROUP_SCOPE, USER_GROUP_SCOPE} from "@/common/js/table-constants";
export default {
name: "EditPermission",
@@ -83,24 +84,38 @@ export default {
let data = result.data;
if (data) {
this.tableData = data.permissions;
- for (let i = 0; i < this.tableData.length; i++) {
- if (i === 0) {
- this.spanArr.push(1);
- this.pos = 0
- } else {
- // 判断当前元素与上一个元素是否相同
- if (this.tableData[i].type === this.tableData[i - 1].type) {
- this.spanArr[this.pos] += 1;
- this.spanArr.push(0);
- } else {
- this.spanArr.push(1);
- this.pos = i;
- }
- }
- }
+ this._getUniteMenu();
}
})
},
+ _getUniteMenu() {
+ let menu = ['TRACK', 'API', 'PERFORMANCE'];
+ for (let i = 0; i < this.tableData.length; i++) {
+ if (i === 0) {
+ this.spanArr.push(1);
+ this.pos = 0
+ } else {
+ // 判断当前元素与上一个元素是否相同
+ let sign = false;
+ if (this.tableData[i].type !== 'PROJECT') {
+ sign = this.tableData[i].type === this.tableData[i - 1].type;
+ } else {
+ sign = !menu.includes(this.tableData[i].resource.id.split('_')[1]) ?
+ true : this.tableData[i].resource.id.split('_')[1] === this.tableData[i - 1].resource.id.split('_')[1]
+ }
+ if (sign) {
+ this.spanArr[this.pos] += 1;
+ this.spanArr.push(0);
+ } else {
+ this.spanArr.push(1);
+ this.pos = i;
+ }
+ }
+ }
+ },
+ _computedMenuName(resource) {
+ return PROJECT_GROUP_SCOPE[resource.id.split('_')[1]] ? PROJECT_GROUP_SCOPE[resource.id.split('_')[1]] : '项目';
+ },
onSubmit() {
let param = {};
let permissions = [];
diff --git a/frontend/src/common/js/table-constants.js b/frontend/src/common/js/table-constants.js
index fd986e545e..50243f6dbf 100644
--- a/frontend/src/common/js/table-constants.js
+++ b/frontend/src/common/js/table-constants.js
@@ -97,3 +97,9 @@ export const USER_GROUP_SCOPE = {
'WORKSPACE': '工作空间',
'PROJECT': '项目'
}
+
+export const PROJECT_GROUP_SCOPE = {
+ 'TRACK': '测试跟踪',
+ 'API': '接口测试',
+ 'PERFORMANCE': '性能测试'
+}