diff --git a/backend/src/main/java/io/metersphere/xpack b/backend/src/main/java/io/metersphere/xpack
index ddd2d05cba..2a4de6d15f 160000
--- a/backend/src/main/java/io/metersphere/xpack
+++ b/backend/src/main/java/io/metersphere/xpack
@@ -1 +1 @@
-Subproject commit ddd2d05cba01793529905fb478de5df9d2f22ca0
+Subproject commit 2a4de6d15fbac52852b0ae9050429c93a97f8483
diff --git a/backend/src/main/resources/db/migration/V104__v1.17_release.sql b/backend/src/main/resources/db/migration/V104__v1.17_release.sql
index 2fce59ff27..33405cad2a 100644
--- a/backend/src/main/resources/db/migration/V104__v1.17_release.sql
+++ b/backend/src/main/resources/db/migration/V104__v1.17_release.sql
@@ -1,3 +1,15 @@
+-- permission
+INSERT INTO user_group_permission (id, group_id, permission_id, module_id)
+VALUES ('36c05551-5195-4cb8-98d4-737f15ffe0bb', 'project_admin', 'PROJECT_VERSION:READ+DELETE', 'PROJECT_VERSION');
+INSERT INTO user_group_permission (id, group_id, permission_id, module_id)
+VALUES ('4783870f-c29c-4b00-9797-be618b4464a2', 'project_admin', 'PROJECT_VERSION:READ+ENABLE', 'PROJECT_VERSION');
+INSERT INTO user_group_permission (id, group_id, permission_id, module_id)
+VALUES ('7396b1f2-2ed4-4582-bbd8-8d721dac96fa', 'project_admin', 'PROJECT_VERSION:READ+CREATE', 'PROJECT_VERSION');
+INSERT INTO user_group_permission (id, group_id, permission_id, module_id)
+VALUES ('75a35739-832d-4edf-8bba-f19e46d9a8df', 'project_admin', 'PROJECT_VERSION:READ', 'PROJECT_VERSION');
+INSERT INTO user_group_permission (id, group_id, permission_id, module_id)
+VALUES ('8d0ba6b9-938c-4e94-b60f-df791b36f56c', 'project_admin', 'PROJECT_VERSION:READ+EDIT', 'PROJECT_VERSION');
+
-- version
CREATE TABLE IF NOT EXISTS `project_version`
(
@@ -47,7 +59,7 @@ ALTER TABLE api_definition_exec_result
ADD version_id VARCHAR(50) NULL;
CREATE INDEX api_definition_exec_result_version_id_index
- ON api_definition_exec_result(version_id);
+ ON api_definition_exec_result (version_id);
CREATE INDEX api_definition_ref_id_index
ON api_definition (ref_id);
@@ -76,11 +88,11 @@ SET version_id = project_version.id;
UPDATE api_definition_exec_result
JOIN api_test_case ON resource_id = api_test_case.id
-set api_definition_exec_result.version_id = api_test_case.version_id;
+SET api_definition_exec_result.version_id = api_test_case.version_id;
UPDATE api_definition_exec_result
JOIN api_definition ON resource_id = api_definition.id
-set api_definition_exec_result.version_id = api_definition.version_id;
+SET api_definition_exec_result.version_id = api_definition.version_id;
-- load_test
ALTER TABLE load_test
@@ -93,7 +105,7 @@ ALTER TABLE load_test_report
ADD version_id VARCHAR(50) NULL;
CREATE INDEX load_test_report_version_id_index
- ON load_test_report(version_id);
+ ON load_test_report (version_id);
CREATE INDEX load_test_ref_id_index
ON load_test (ref_id);
@@ -123,7 +135,7 @@ ALTER TABLE api_scenario_report
ADD version_id VARCHAR(50) NULL;
CREATE INDEX api_scenario_report_version_id_index
- ON api_scenario_report(version_id);
+ ON api_scenario_report (version_id);
CREATE INDEX api_scenario_ref_id_index
ON api_scenario (ref_id);
diff --git a/backend/src/main/resources/permission.json b/backend/src/main/resources/permission.json
index e46cf7bad1..539d69527f 100644
--- a/backend/src/main/resources/permission.json
+++ b/backend/src/main/resources/permission.json
@@ -889,6 +889,36 @@
"name": "permission.project_enterprise_report.edit",
"resourceId": "PROJECT_ENTERPRISE_REPORT",
"license": true
+ },
+ {
+ "id": "PROJECT_VERSION:READ",
+ "name": "project.version.read",
+ "resourceId": "PROJECT_VERSION",
+ "license": true
+ },
+ {
+ "id": "PROJECT_VERSION:READ+CREATE",
+ "name": "project.version.create_version",
+ "resourceId": "PROJECT_VERSION",
+ "license": true
+ },
+ {
+ "id": "PROJECT_VERSION:READ+EDIT",
+ "name": "project.version.edit_version",
+ "resourceId": "PROJECT_VERSION",
+ "license": true
+ },
+ {
+ "id": "PROJECT_VERSION:READ+DELETE",
+ "name": "project.version.delete_version",
+ "resourceId": "PROJECT_VERSION",
+ "license": true
+ },
+ {
+ "id": "PROJECT_VERSION:READ+ENABLE",
+ "name": "project.version.enable",
+ "resourceId": "PROJECT_VERSION",
+ "license": true
}
],
"resource": [
@@ -980,6 +1010,11 @@
"id": "PROJECT_FILE",
"name": "permission.project_file.name"
},
+ {
+ "id": "PROJECT_VERSION",
+ "name": "project.version_manage",
+ "license": true
+ },
{
"id": "PROJECT_APP_MANAGER",
"name": "permission.project_app_manager.name"
diff --git a/frontend/src/business/components/project/head/ProjectHeaderMenus.vue b/frontend/src/business/components/project/head/ProjectHeaderMenus.vue
index 20cef4c57b..e4ea0e386e 100644
--- a/frontend/src/business/components/project/head/ProjectHeaderMenus.vue
+++ b/frontend/src/business/components/project/head/ProjectHeaderMenus.vue
@@ -30,7 +30,7 @@
{{ $t('project.log') }}
-
+
{{ $t('project.version_manage') }}