Commit a73a8654 authored by mengzixuan's avatar mengzixuan

feat(车型试验原始记录): 页面开发

parent 34479792
...@@ -30,12 +30,6 @@ ...@@ -30,12 +30,6 @@
{{ task.entrustedUnit }} {{ task.entrustedUnit }}
</span> </span>
</div> </div>
<!-- <div class="task-item">-->
<!-- <span class="task-label">任务状态:</span>-->
<!-- <span class="task-content">-->
<!-- {{ getDictData(dict.type.task_test_status, task.taskStatus) }}-->
<!-- </span>-->
<!-- </div>-->
</div> </div>
<div class="task-body"> <div class="task-body">
<!--card统计值--> <!--card统计值-->
...@@ -44,7 +38,7 @@ ...@@ -44,7 +38,7 @@
<div class="message-detail"> <div class="message-detail">
<div class="detail-title">测试用例(条)</div> <div class="detail-title">测试用例(条)</div>
<div class="detail-num mt10"> <div class="detail-num mt10">
{{ model.carReviewTask.details }} {{ task.useCaseNum }}
</div> </div>
</div> </div>
<svg-icon <svg-icon
...@@ -58,7 +52,7 @@ ...@@ -58,7 +52,7 @@
<div class="message-detail"> <div class="message-detail">
<div class="detail-title">标准条款(条)</div> <div class="detail-title">标准条款(条)</div>
<div class="detail-num mt10"> <div class="detail-num mt10">
{{ model.carReviewTask.detailsPass }} {{ task.standardNum }}
</div> </div>
</div> </div>
<svg-icon <svg-icon
...@@ -71,9 +65,7 @@ ...@@ -71,9 +65,7 @@
<div class="message-box" style="background-color: #eca740"> <div class="message-box" style="background-color: #eca740">
<div class="message-detail"> <div class="message-detail">
<div class="detail-title">测试通过率(%)</div> <div class="detail-title">测试通过率(%)</div>
<div class="detail-num mt10"> <div class="detail-num mt10">{{ task.testPass }} %</div>
{{ model.carReviewTask.standards }} %
</div>
</div> </div>
<svg-icon <svg-icon
class="message-icon" class="message-icon"
...@@ -86,7 +78,7 @@ ...@@ -86,7 +78,7 @@
<div class="message-detail"> <div class="message-detail">
<div class="detail-title">测试通过(个)</div> <div class="detail-title">测试通过(个)</div>
<div class="detail-num mt10"> <div class="detail-num mt10">
{{ model.carReviewTask.standardsPass }} {{ task.testPassNum }}
</div> </div>
</div> </div>
<svg-icon <svg-icon
...@@ -100,7 +92,7 @@ ...@@ -100,7 +92,7 @@
<div class="message-detail"> <div class="message-detail">
<div class="detail-title">测试未通过(个)</div> <div class="detail-title">测试未通过(个)</div>
<div class="detail-num mt10"> <div class="detail-num mt10">
{{ model.carReviewTask.person }} {{ task.testNoPassNum }}
</div> </div>
</div> </div>
<svg-icon <svg-icon
...@@ -114,116 +106,18 @@ ...@@ -114,116 +106,18 @@
</div> </div>
</div> </div>
<!--测试情况概要--> <!--PDF-->
<div> <div>
<div class="form-review-questionnaire"> <div>
<div class="title-display"> <div class="pdf-box">
<span class="title-i"></span> <iframe
<span class="title-content">测试情况概要</span> v-loading="loadingFile"
</div> :src="fileUrl"
<!--审查表单概要--> frameborder="0"
<table class="table"> style="width: 100%; height: 100%"
<col style="width: 100px" /> ></iframe>
<thead>
<tr>
<th style="width: 100px">章节号</th>
<th>标准技术要求</th>
<th>标准测试方法</th>
<th>测试场景</th>
<th>测试方法</th>
<th>用例编号</th>
<th>测试结果</th>
<!-- <th>用例名称</th>-->
<!-- <th>工具</th>-->
<!-- <th>对应输入</th>-->
<!-- <th style="width: 370px">测试用例</th>-->
</tr>
</thead>
<tbody>
<template v-for="(i, PointIndex) in tableData">
<tr :key="'PointIndex1' + PointIndex">
<td align="center" :rowspan="getRows3(i)">
{{ i.chapter }}
</td>
<td align="center" :rowspan="getRows3(i)">
{{ i.text }}
</td>
<td align="center" :rowspan="getRows3(i)">
{{ i.testMethod }}
</td>
</tr>
<template v-for="(v, testCaseIndex) in i.testCaseList">
<tr :key="'testCaseIndex' + PointIndex + testCaseIndex">
<td align="center" rowspan="1">
{{ v.testScenario }}
</td>
<td align="center" rowspan="1">
{{ v.testType }}
</td>
<td align="center" rowspan="1">
{{ v.usecaseNo }}
</td>
<td align="center" rowspan="1">
{{ '' }}
</td>
<!-- <td align="center" rowspan="1">-->
<!-- {{ v.name }}-->
<!-- </td>-->
<!-- <td align="center" rowspan="1">-->
<!-- {{ v.tools }}-->
<!-- </td>-->
<!-- <td align="center" rowspan="1">-->
<!-- {{ v.input }}-->
<!-- </td>-->
<!-- <td align="center" rowspan="1">-->
<!-- {{ v.description }}-->
<!-- </td>-->
</tr>
</template>
</template>
</tbody>
</table>
</div>
<!--签字确认-->
<div class="form-signature-confirmation">
<div class="title-display">
<span class="title-i"></span>
<span class="title-content">签字确认</span>
</div>
<div class="img-display">
<div class="img-item">
<div class="img-label label-required">检验负责人</div>
<img
v-if="ruleForm.inspectionLeader"
class="img"
:src="ruleForm.inspectionLeader"
/>
<div v-else class="img">
<iconpark-icon name="wuqianzi" size="120"></iconpark-icon>
<div class="img-text">暂无签字</div>
</div>
</div>
</div> </div>
</div> </div>
<!--返回按钮-->
<div class="bottom-btn">
<footer-button
type="default"
icon="arrow-left"
@click="$router.go(-1)"
>
返回
</footer-button>
<footer-button
v-if="this.isLeader !== false"
type="primary"
icon="hard-disk-one"
@click="goToProcessedReview"
>
确认提交
</footer-button>
</div>
</div> </div>
</div> </div>
</task-standard> </task-standard>
...@@ -231,76 +125,43 @@ ...@@ -231,76 +125,43 @@
<!--js逻辑--> <!--js逻辑-->
<script> <script>
import routerMixins from '@/mixins/router' import routerMixins from '@/mixins/router'
import { getRows3 } from '@/utils/reviewDetailsTable'
import { testDetail } from '@/api/task/test' import { testDetail } from '@/api/task/test'
import { getBySubtaskId, taskImageSubmit } from '@/api/task/task' import { pdfDownload } from '@/api/task/task'
export default { export default {
name: 'Index', name: 'Index',
dicts: ['task_test_status'], dicts: ['task_test_status'],
mixins: [routerMixins], mixins: [routerMixins],
data() { data() {
return { return {
tableData: [],
task: {}, task: {},
model: {
carReviewTask: {},
reviewSceneChangeTasks: {},
detailsList: []
},
ruleForm: {
enterpriseLeader: '',
inspectionLeader: '',
result: []
},
loading: false, loading: false,
isLeader: '' fileUrl: '',
loadingFile: false
} }
}, },
mounted() { mounted() {
this.getTest()
this.getTestDetail() this.getTestDetail()
}, },
methods: { methods: {
getRows3,
/* 返回跳转*/
goToProcessedReview() {
// this.ruleForm.taskId = '1771093631118106626'
const formData = {
// imagesUrl: [
// this.ruleForm.enterpriseLeader,
// this.ruleForm.inspectionLeader
// ],
imagesUrl: [{}],
taskId: this.$route.query.id
}
console.log('formData', formData)
taskImageSubmit(formData).then(res => {
if (res.code === 200) {
this.$modal.msgSuccess('确认提交成功')
this.$router.push({
path: '/processing/unprocessed-review'
})
} else {
this.$modal.msgError(res.msg)
}
})
},
/** 获取任务详情 */
getTest() {
getBySubtaskId({ id: this.$route.query.id }).then(res => {
if (res.code === 200) {
this.task = res.data
const auditors = res.data.auditors
this.isLeader = auditors.some(item => item.isLeader === 1)
console.log('found', this.isLeader) // 输出: true 如果找到,否则输出: false
}
})
},
getTestDetail() { getTestDetail() {
this.loading = true this.loading = true
testDetail({ taskId: this.$route.query.id }).then(res => { testDetail({ taskId: this.$route.query.modelTestTaskId }).then(res => {
this.tableData = res.data this.task = res.data
this.loading = false this.loading = false
this.getPdf()
})
},
getPdf() {
this.loadingFile = true
pdfDownload({
taskId: this.$route.query.id,
type: '2'
}).then(res => {
this.fileUrl =
process.env.VUE_APP_IMAGE_API +
'/vehicle-quality-review-oss/' +
res.data
this.loadingFile = false
}) })
} }
} }
...@@ -316,4 +177,7 @@ export default { ...@@ -316,4 +177,7 @@ export default {
.table th { .table th {
background-color: #f2f2f2 !important; background-color: #f2f2f2 !important;
} }
.pdf-box {
height: 100vh;
}
</style> </style>
...@@ -181,8 +181,10 @@ ...@@ -181,8 +181,10 @@
size="mini" size="mini"
@click=" @click="
goNext( goNext(
'/processing/carTest/source-record?id=' + '/processing/carTest/source-record?modelTestTaskId=' +
item.modelTestTaskId item.modelTestTaskId +
'&id=' +
item.id
) )
" "
>车型试验原始记录</el-button >车型试验原始记录</el-button
...@@ -281,6 +283,7 @@ export default { ...@@ -281,6 +283,7 @@ export default {
}, },
/* 跳转到问卷详情*/ /* 跳转到问卷详情*/
goNext(url) { goNext(url) {
console.log(url)
this.$router.push({ path: url }) this.$router.push({ path: url })
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment