+
-
-
-
+
+
-
-
+
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
+
+
+ {{ scope.row.versionName }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
@@ -72,7 +87,9 @@ import TableSelectCountBar from "@/business/components/api/automation/scenario/a
import {TEST_CASE_RELEVANCE_API_CASE_CONFIGS} from "@/business/components/common/components/search/search-components";
import MsTableAdvSearchBar from "@/business/components/common/components/search/MsTableAdvSearchBar";
import MsTag from "@/business/components/common/components/MsTag";
-import {getCurrentProjectID} from "@/common/js/utils";
+import {getCurrentProjectID, hasLicense} from "@/common/js/utils";
+const requireComponent = require.context('@/business/components/xpack/', true, /\.vue$/);
+const VersionSelect = requireComponent.keys().length > 0 ? requireComponent("./version/VersionSelect.vue") : {};
export default {
name: "TestCaseRelateApiList",
@@ -83,7 +100,8 @@ export default {
MsTable,
MsTableColumn,
MsTableAdvSearchBar,
- MsTag
+ MsTag,
+ 'VersionSelect': VersionSelect.default,
},
data() {
return {
@@ -104,15 +122,21 @@ export default {
currentPage: 1,
pageSize: 10,
total: 0,
+ versionFilters: []
}
},
props: {
currentProtocol: String,
selectNodeIds: Array,
projectId: String,
+ versionEnable: {
+ type: Boolean,
+ default: false
+ }
},
created: function () {
this.initTable();
+ this.getVersionOptions();
},
watch: {
selectNodeIds() {
@@ -176,6 +200,19 @@ export default {
this.$refs.table.clearSelectRows();
}
},
+ getVersionOptions() {
+ if (hasLicense()) {
+ this.$get('/project/version/get-project-versions/' + getCurrentProjectID(), response => {
+ this.versionFilters = response.data.map(u => {
+ return {text: u.name, value: u.id};
+ });
+ });
+ }
+ },
+ changeVersion(currentVersion) {
+ this.condition.versionId = currentVersion || null;
+ this.initTable();
+ }
},
}
diff --git a/frontend/src/business/components/track/case/components/TestCaseRelateLoadList.vue b/frontend/src/business/components/track/case/components/TestCaseRelateLoadList.vue
index ebe96c0abc..c5b131b9a8 100644
--- a/frontend/src/business/components/track/case/components/TestCaseRelateLoadList.vue
+++ b/frontend/src/business/components/track/case/components/TestCaseRelateLoadList.vue
@@ -6,6 +6,10 @@
+
+
+
+
+
+ {{ scope.row.versionName }}
+
+
+
0 ? requireComponent("./version/VersionSelect.vue") : {};
+import {hasLicense, getCurrentProjectID} from "@/common/js/utils";
export default {
name: "TestCaseRelateLoadList",
@@ -77,6 +95,7 @@ export default {
MsTable,
MsTableColumn,
MsTableAdvSearchBar,
+ 'VersionSelect': VersionSelect.default,
},
data() {
return {
@@ -89,13 +108,16 @@ export default {
currentPage: 1,
pageSize: 10,
total: 0,
+ versionFilters: [],
}
},
props: {
projectId: String,
+ versionEnable: Boolean,
},
created: function () {
this.initTable();
+ this.getVersionOptions();
},
watch: {
projectId() {
@@ -141,6 +163,20 @@ export default {
this.$refs.table.clearSelectRows();
}
},
+ getVersionOptions() {
+ if (hasLicense()) {
+ this.$get('/project/version/get-project-versions/' + getCurrentProjectID(), response => {
+ this.versionOptions = response.data;
+ this.versionFilters = response.data.map(u => {
+ return {text: u.name, value: u.id};
+ });
+ });
+ }
+ },
+ changeVersion(currentVersion) {
+ this.condition.versionId = currentVersion || null;
+ this.initTable();
+ }
},
}
diff --git a/frontend/src/business/components/track/case/components/TestCaseRelateScenarioList.vue b/frontend/src/business/components/track/case/components/TestCaseRelateScenarioList.vue
index 046e63de09..31f0bfafa5 100644
--- a/frontend/src/business/components/track/case/components/TestCaseRelateScenarioList.vue
+++ b/frontend/src/business/components/track/case/components/TestCaseRelateScenarioList.vue
@@ -6,6 +6,10 @@
+
+
+
+
+
+ {{ scope.row.versionName }}
+
+
+
0 ? requireComponent("./version/VersionSelect.vue") : {};
export default {
name: "TestCaseRelateScenarioList",
@@ -97,7 +115,8 @@ export default {
MsTable,
MsTableColumn,
MsTableAdvSearchBar,
- MsTag
+ MsTag,
+ 'VersionSelect': VersionSelect.default,
},
data() {
return {
@@ -116,14 +135,17 @@ export default {
currentPage: 1,
pageSize: 10,
total: 0,
+ versionFilters: []
}
},
props: {
selectNodeIds: Array,
projectId: String,
+ versionEnable: Boolean,
},
created: function () {
this.initTable();
+ this.getVersionOptions();
},
watch: {
selectNodeIds() {
@@ -178,6 +200,20 @@ export default {
this.$refs.table.clearSelectRows();
}
},
+ getVersionOptions() {
+ if (hasLicense()) {
+ this.$get('/project/version/get-project-versions/' + getCurrentProjectID(), response => {
+ this.versionOptions = response.data;
+ this.versionFilters = response.data.map(u => {
+ return {text: u.name, value: u.id};
+ });
+ });
+ }
+ },
+ changeVersion(currentVersion) {
+ this.condition.versionId = currentVersion || null;
+ this.initTable();
+ }
},
}
diff --git a/frontend/src/business/components/track/case/components/TestCaseRelationshipList.vue b/frontend/src/business/components/track/case/components/TestCaseRelationshipList.vue
index 7e7446e8e9..7d73a1e1e4 100644
--- a/frontend/src/business/components/track/case/components/TestCaseRelationshipList.vue
+++ b/frontend/src/business/components/track/case/components/TestCaseRelationshipList.vue
@@ -39,6 +39,16 @@
:label="$t('commons.name')"
min-width="120"/>
+
+
+ {{ scope.row.versionName }}
+
+
+
@@ -108,6 +119,7 @@ export default {
caseId: String,
readOnly: Boolean,
relationshipType: String,
+ versionEnable: Boolean,
},
computed: {
isCustomNum() {
diff --git a/frontend/src/business/components/track/case/components/TestCaseScenarioRelate.vue b/frontend/src/business/components/track/case/components/TestCaseScenarioRelate.vue
index d57e475aa9..aecc7ee64d 100644
--- a/frontend/src/business/components/track/case/components/TestCaseScenarioRelate.vue
+++ b/frontend/src/business/components/track/case/components/TestCaseScenarioRelate.vue
@@ -20,6 +20,7 @@
@@ -54,7 +55,11 @@ export default {
props: {
caseId: {
type: String
- }
+ },
+ versionEnable: {
+ type: Boolean,
+ default: false
+ },
},
methods: {
open() {
diff --git a/frontend/src/business/components/track/case/components/TestCaseTestRelate.vue b/frontend/src/business/components/track/case/components/TestCaseTestRelate.vue
index 5276e6a7ef..e198ac27c0 100644
--- a/frontend/src/business/components/track/case/components/TestCaseTestRelate.vue
+++ b/frontend/src/business/components/track/case/components/TestCaseTestRelate.vue
@@ -29,6 +29,15 @@
prop="name"
:label="$t('test_track.case.name')"/>
+
+
+
+
@@ -40,16 +49,19 @@
@@ -87,7 +99,7 @@ export default {
],
}
},
- props: ['caseId', 'readOnly'],
+ props: ['caseId', 'readOnly', 'versionEnable'],
watch: {
caseId() {
this.initTable();
diff --git a/frontend/src/business/components/track/plan/view/TestPlanView.vue b/frontend/src/business/components/track/plan/view/TestPlanView.vue
index 4fc54798e8..fe29c2f19a 100644
--- a/frontend/src/business/components/track/plan/view/TestPlanView.vue
+++ b/frontend/src/business/components/track/plan/view/TestPlanView.vue
@@ -21,12 +21,13 @@
+ :clickType="clickType" :plan-id="planId" :version-enable="versionEnable"
+ ref="testPlanFunctional"/>
+ :plan-id="planId" :version-enable="versionEnable"/>
-
+ :plan-id="planId" :version-enable="versionEnable"/>
+
{
this.isMenuShow = true;
});
- }
+ },
+ checkVersionEnable() {
+ if (!this.projectId) {
+ return;
+ }
+ if (hasLicense()) {
+ this.$get('/project/version/enable/' + this.projectId, response => {
+ this.versionEnable = response.data;
+ });
+ }
+ },
},
};
diff --git a/frontend/src/business/components/track/plan/view/comonents/api/TestCaseApiRelevance.vue b/frontend/src/business/components/track/plan/view/comonents/api/TestCaseApiRelevance.vue
index fc7a49d598..c8389a13c2 100644
--- a/frontend/src/business/components/track/plan/view/comonents/api/TestCaseApiRelevance.vue
+++ b/frontend/src/business/components/track/plan/view/comonents/api/TestCaseApiRelevance.vue
@@ -26,6 +26,7 @@
:is-test-plan="true"
:plan-id="planId"
:versionFilters="versionFilters"
+ :version-enable="versionEnable"
@isApiListEnableChange="isApiListEnableChange"
ref="apiList">
@@ -41,6 +42,7 @@
:project-id="projectId"
:is-test-plan="true"
:versionFilters="versionFilters"
+ :version-enable="versionEnable"
:plan-id="planId"
@isApiListEnableChange="isApiListEnableChange"
ref="apiCaseList">
@@ -91,6 +93,10 @@
props: {
planId: {
type: String
+ },
+ versionEnable: {
+ type: Boolean,
+ default: false
}
},
watch: {
diff --git a/frontend/src/business/components/track/plan/view/comonents/api/TestPlanApi.vue b/frontend/src/business/components/track/plan/view/comonents/api/TestPlanApi.vue
index cd7f421ad0..b643e144a9 100644
--- a/frontend/src/business/components/track/plan/view/comonents/api/TestPlanApi.vue
+++ b/frontend/src/business/components/track/plan/view/comonents/api/TestPlanApi.vue
@@ -47,6 +47,7 @@
:select-node-ids="selectNodeIds"
:trash-enable="trashEnable"
:is-case-relevance="true"
+ :version-enable="versionEnable"
:model="'plan'"
:plan-id="planId"
:clickType="clickType"
@@ -58,6 +59,7 @@
v-if="model === 'scenario'"
:select-node-ids="selectNodeIds"
:trash-enable="trashEnable"
+ :version-enable="versionEnable"
:plan-id="planId"
:clickType="clickType"
@refresh="refreshTree"
@@ -70,6 +72,7 @@
@refresh="refresh"
:plan-id="planId"
:model="model"
+ :version-enable="versionEnable"
ref="apiCaseRelevance"/>
-
-
@@ -41,6 +39,7 @@
:label="$t('test_track.case.name')"/>
+
@@ -32,7 +33,11 @@ export default {
props: {
planId: {
type: String
- }
+ },
+ versionEnable: {
+ type: Boolean,
+ default: false
+ },
},
watch: {
planId() {
diff --git a/frontend/src/business/components/track/plan/view/comonents/load/TestCaseLoadRelevance.vue b/frontend/src/business/components/track/plan/view/comonents/load/TestCaseLoadRelevance.vue
index 4950dfc96e..f2841cb363 100644
--- a/frontend/src/business/components/track/plan/view/comonents/load/TestCaseLoadRelevance.vue
+++ b/frontend/src/business/components/track/plan/view/comonents/load/TestCaseLoadRelevance.vue
@@ -45,6 +45,7 @@
@@ -22,6 +23,7 @@
@@ -54,7 +56,8 @@ export default {
props: [
'planId',
'redirectCharType',
- 'clickType'
+ 'clickType',
+ 'versionEnable',
],
watch: {
planId() {
diff --git a/frontend/src/business/components/track/plan/view/comonents/load/TestPlanLoadCaseList.vue b/frontend/src/business/components/track/plan/view/comonents/load/TestPlanLoadCaseList.vue
index e4b375a463..747c247cb0 100644
--- a/frontend/src/business/components/track/plan/view/comonents/load/TestPlanLoadCaseList.vue
+++ b/frontend/src/business/components/track/plan/view/comonents/load/TestPlanLoadCaseList.vue
@@ -46,6 +46,7 @@
sortable>
+ :clickType="clickType" :review-id="reviewId" :version-enable="versionEnable"
+ ref="testReviewFunction"/>