fix(接口测试): 引用复制场景保存测试报错
This commit is contained in:
parent
0da55f5ef0
commit
196bcec3bf
|
@ -1 +1 @@
|
|||
Subproject commit cf6b06526324326a563d933e07118fac014a63b4
|
||||
Subproject commit ee74568be0beba46da19616f5832e83f9164c688
|
|
@ -61,7 +61,7 @@
|
|||
:request="selected" :scenario="currentScenario" v-if="isRequest"/>
|
||||
</div>
|
||||
</el-main>
|
||||
<ms-api-scenario-select :exclude-id="test.id" @select="selectScenario" ref="selectDialog"/>
|
||||
<ms-api-scenario-select :exclude-id="test.id" :project-id="test.projectId" @select="selectScenario" ref="selectDialog"/>
|
||||
</el-container>
|
||||
</template>
|
||||
|
||||
|
|
|
@ -43,6 +43,7 @@ import MsTableSearchBar from "@/business/components/common/components/MsTableSea
|
|||
import MsTableAdvSearchBar from "@/business/components/common/components/search/MsTableAdvSearchBar";
|
||||
import MsApiScenarioSelectSubTable from "@/business/components/api/test/components/ApiScenarioSelectSubTable";
|
||||
import {Scenario} from "@/business/components/api/test/model/ScenarioModel";
|
||||
import {parseEnvironment} from "../model/EnvironmentModel";
|
||||
|
||||
export default {
|
||||
name: "MsApiScenarioSelect",
|
||||
|
@ -51,7 +52,8 @@ export default {
|
|||
MsTableAdvSearchBar, MsTableSearchBar, MsTablePagination, MsTableHeader
|
||||
},
|
||||
props: {
|
||||
excludeId: String
|
||||
excludeId: String,
|
||||
projectId: String
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
|
@ -64,6 +66,7 @@ export default {
|
|||
pageSize: 5,
|
||||
total: 0,
|
||||
selection: false,
|
||||
environmentMap: new Map()
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
@ -94,19 +97,50 @@ export default {
|
|||
}
|
||||
scenarios.push(scenario);
|
||||
}
|
||||
this.initScenarioEnvironment(scenarios);
|
||||
this.$emit('select', scenarios);
|
||||
},
|
||||
getEnvironment() {
|
||||
if (this.projectId) {
|
||||
this.result = this.$get('/api/environment/list/' + this.projectId, response => {
|
||||
let environments = response.data;
|
||||
this.environmentMap = new Map();
|
||||
environments.forEach(environment => {
|
||||
parseEnvironment(environment);
|
||||
this.environmentMap.set(environment.id, environment);
|
||||
});
|
||||
});
|
||||
}
|
||||
},
|
||||
initScenarioEnvironment(scenarios) {
|
||||
scenarios.forEach(scenario => {
|
||||
if (scenario.environmentId) {
|
||||
let env = this.environmentMap.get(scenario.environmentId);
|
||||
if (!env) {
|
||||
scenario.environmentId = undefined;
|
||||
scenario.environment = undefined;
|
||||
} else {
|
||||
scenario.environment = env;
|
||||
}
|
||||
} else {
|
||||
scenario.environmentId = undefined;
|
||||
scenario.environment = undefined;
|
||||
}
|
||||
});
|
||||
},
|
||||
clone(row) {
|
||||
let scenarios = [];
|
||||
row.selected.forEach(options => {
|
||||
// 去掉ID,创建新的ID
|
||||
options.id = undefined;
|
||||
scenarios.push(new Scenario(options));
|
||||
})
|
||||
});
|
||||
this.initScenarioEnvironment(scenarios);
|
||||
this.$emit('select', scenarios);
|
||||
},
|
||||
open() {
|
||||
this.search();
|
||||
this.getEnvironment();
|
||||
this.visible = true;
|
||||
},
|
||||
close() {
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit 06d935cd1d22ab36f09763745c2aff8ad3fb08c1
|
||||
Subproject commit cc38137a69a0f20fadece9c0f9f50a9468c4ace9
|
Loading…
Reference in New Issue