add:测试计划关联测试报告编辑API
This commit is contained in:
@@ -76,4 +76,14 @@ public class TestReportController extends BaseController {
|
|||||||
return toAjax(testReportService.updateExecuteCaseReport(testReport));
|
return toAjax(testReportService.updateExecuteCaseReport(testReport));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改测试计划关联测试报告
|
||||||
|
* @param testReport
|
||||||
|
*/
|
||||||
|
@Log(title = "测试报告", businessType = BusinessType.UPDATE)
|
||||||
|
@PostMapping("/updateExecuteCaseReport")
|
||||||
|
public AjaxResult updateExecuteCaseReport(@RequestBody TestReport testReport) {
|
||||||
|
return toAjax(testReportService.updateExecuteCaseReport(testReport));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ const api = {
|
|||||||
addTestReport: 'test/testReport/addTestReport',
|
addTestReport: 'test/testReport/addTestReport',
|
||||||
getTestReportList: 'test/testReport/reportList',
|
getTestReportList: 'test/testReport/reportList',
|
||||||
delExecuteCaseReport: 'test/testReport/delExecuteCaseReport',
|
delExecuteCaseReport: 'test/testReport/delExecuteCaseReport',
|
||||||
|
updateExecuteCaseReport: 'test/testReport/updateExecuteCaseReport',
|
||||||
getPlanOverview:'test/testPlan/planOverview',
|
getPlanOverview:'test/testPlan/planOverview',
|
||||||
getPlanCaseTrendData: 'test/testPlan/planCaseTrendData',
|
getPlanCaseTrendData: 'test/testPlan/planCaseTrendData',
|
||||||
}
|
}
|
||||||
@@ -86,6 +87,14 @@ export function delExecuteCaseReport(id) {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function updateExecuteCaseReport(data) {
|
||||||
|
return request({
|
||||||
|
url: api.updateExecuteCaseReport,
|
||||||
|
method: 'post',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
export function getPlanOverview(id) {
|
export function getPlanOverview(id) {
|
||||||
return request({
|
return request({
|
||||||
url: api.getPlanOverview,
|
url: api.getPlanOverview,
|
||||||
|
|||||||
@@ -106,8 +106,14 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
activated() {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
console.log('getlist')
|
||||||
|
this.getList()
|
||||||
|
})
|
||||||
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.getList()
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
handleRowClick(row){
|
handleRowClick(row){
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
<el-row :gutter="10" class="mb8">
|
<el-row :gutter="10" class="mb8">
|
||||||
<el-col :span="24" class="page-header">
|
<el-col :span="24" class="page-header">
|
||||||
<el-page-header :title="reportTitle" @back="goBack" ></el-page-header>
|
<el-page-header :title="reportTitle" @back="goBack" ></el-page-header>
|
||||||
<div class="header-buttons">
|
<div class="header-buttons" v-if="isEdit">
|
||||||
<span>测试结果</span>
|
<span>测试结果</span>
|
||||||
<el-select v-model="selectedResult" placeholder="请选择">
|
<el-select v-model="selectedResult" placeholder="请选择">
|
||||||
<el-option
|
<el-option
|
||||||
@@ -15,17 +15,29 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
<el-button type="primary" icon="el-icon-setting" @click="configureModule">配置模块</el-button>
|
<el-button type="primary" icon="el-icon-setting" @click="configureModule">配置模块</el-button>
|
||||||
<el-button type="primary" size="medium" @click="saveReport">保存报告</el-button>
|
<el-button type="primary" size="medium" @click="saveReport">保存报告</el-button>
|
||||||
|
<el-button type="danger" size="medium" @click="isEdit = false">取消编辑</el-button>
|
||||||
|
</div>
|
||||||
|
<div class="header-buttons" v-else>
|
||||||
|
<el-button type="primary" icon="el-icon-setting" @click="configureModule">下载报告</el-button>
|
||||||
|
<el-button type="primary" size="medium" @click="isEdit = true">编辑报告</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<div class="report-container" :class="testStatusClass">
|
<div class="report-container" :class="testStatusClass">
|
||||||
<div class="report-header">
|
<div class="report-header">
|
||||||
<div class="report-title">
|
<div class="report-title" v-if="isEdit">
|
||||||
<span>{{ reportTitle }}</span>
|
<el-input v-model="reportTitle" style="width: 300px" placeholder="请输入报告名称"/>
|
||||||
|
<div class="report-info">
|
||||||
|
<span>关联项目:中移商业保理平台</span>
|
||||||
|
<span>测试阶段:{{ reportType }}</span>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="report-info">
|
<div class="report-title" v-else>
|
||||||
<span>关联项目:中移商业保理平台</span>
|
<span>{{ reportTitle }}</span>
|
||||||
<span>测试阶段:{{ reportType }}</span>
|
<div class="report-info">
|
||||||
|
<span>关联项目:中移商业保理平台</span>
|
||||||
|
<span>测试阶段:{{ reportType }}</span>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -73,6 +85,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import * as echarts from 'echarts';
|
import * as echarts from 'echarts';
|
||||||
import router from "@/router";
|
import router from "@/router";
|
||||||
|
import {updateExecuteCaseReport} from "@/api/test/testPlan";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'report',
|
name: 'report',
|
||||||
@@ -85,6 +98,8 @@ export default {
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
isEdit: false,
|
||||||
|
reportId: '',
|
||||||
reportType: '',
|
reportType: '',
|
||||||
reportTitle: '',
|
reportTitle: '',
|
||||||
reportData: {},
|
reportData: {},
|
||||||
@@ -114,6 +129,7 @@ export default {
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
|
this.reportId = this.$route.query.id;
|
||||||
this.reportTitle = this.$route.query.name;
|
this.reportTitle = this.$route.query.name;
|
||||||
this.reportType = this.$route.query.type;
|
this.reportType = this.$route.query.type;
|
||||||
this.reportData = JSON.parse(this.$route.query.report);
|
this.reportData = JSON.parse(this.$route.query.report);
|
||||||
@@ -252,9 +268,31 @@ export default {
|
|||||||
},
|
},
|
||||||
|
|
||||||
saveReport() {
|
saveReport() {
|
||||||
// 保存报告的逻辑
|
let reportData = {
|
||||||
console.log('Save report');
|
caseNum: this.reportData.caseNum,
|
||||||
}
|
name: this.reportData.name,
|
||||||
|
passNum: this.reportData.passNum,
|
||||||
|
result: this.selectedResult // 使用外部的 result 值替换
|
||||||
|
};
|
||||||
|
// 构造要提交的数据对象
|
||||||
|
const reportDataToSave = {
|
||||||
|
id: this.reportId,
|
||||||
|
name: this.reportTitle,
|
||||||
|
result: this.selectedResult,
|
||||||
|
report: JSON.stringify(reportData)
|
||||||
|
};
|
||||||
|
|
||||||
|
updateExecuteCaseReport(reportDataToSave)
|
||||||
|
.then(response => {
|
||||||
|
this.$message.success('报告保存成功');
|
||||||
|
// 可选:更新页面状态为非编辑模式
|
||||||
|
this.isEdit = false;
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
this.$message.error('报告保存失败');
|
||||||
|
console.error('保存报告失败:', error);
|
||||||
|
});
|
||||||
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
Reference in New Issue
Block a user