阅片图表显示修改
continuous-integration/drone/push Build is passing Details

main
wangxiaoshuang 2025-11-21 14:55:13 +08:00
parent 3f9beb6dee
commit 0d9db63f88
36 changed files with 167 additions and 83 deletions

View File

@ -64,7 +64,7 @@ export default {
},
async getInfo(data) {
try {
let { VisitTaskId = null, TrialId = null, QuestionId = null, TableQuestionId = null, RowIndex = null, ReportChartTypeEnum = null } = data
let { VisitTaskId = null, TrialId = null, QuestionId = null, QuestionName = null, TableQuestionId = null, RowIndex = null, ReportChartTypeEnum = null } = data
let params = {
VisitTaskId, TrialId, QuestionId, TableQuestionId, RowIndex, ReportChartTypeEnum
}
@ -72,16 +72,23 @@ export default {
let res = await getReportsChartData(params)
this.loading = false
if (res.IsSuccess) {
let LatestScanDateList = res.Result.LatestScanDateList.map(item => item.split(" ")[0])
let obj = {
xAxisData: res.Result.LatestScanDateList || [],
series: []
title: QuestionName,
xAxisData: LatestScanDateList || [],
series: [],
unit: this.$fd("ValueUnit", res.Result.Unit),
visitName: res.Result.VisitTaskNameList
}
res.Result.ChartDataList.forEach(item => {
res.Result.ChartDataList.forEach((item) => {
let arr = []
item.Value.forEach((d, index) => {
arr.push([LatestScanDateList[index], d])
})
obj.series.push({
name: item.Name,
data: item.Value,
data: arr,
type: 'line'
})
});
this.initChart(obj)
@ -100,11 +107,25 @@ export default {
this.chart = echarts.init(this.$refs.chartContainer);
// ...
const option = {
title: { text: '' },
title: {
text: obj.title,
textStyle: {
color: "#fff"
}
},
tooltip: {
trigger: 'axis'
trigger: 'axis',
formatter: function (params) {
let index = obj.xAxisData.findIndex(item => item === params[0].value[0])
let result = obj.visitName[index] + ' ' + params[0].value[0] + '<br>'; //
params.forEach(function (item) {
result += item.marker + ' ' + item.seriesName + ': ' + item.value[1] + '<br>'; //
});
return result;
}
},
xAxis: {
type: 'time',
data: obj.xAxisData,
axisLine: { // x 线
lineStyle: {
@ -115,9 +136,13 @@ export default {
textStyle: {
color: '#fff'
}
}
},
splitLine: {
show: false // 线
},
},
yAxis: {
name: obj.unit,
type: 'value',
axisLabel: {
textStyle: {
@ -128,7 +153,7 @@ export default {
lineStyle: {
color: '#fff',
}
}
},
},
series: obj.series
};
@ -164,8 +189,8 @@ export default {
list-style-type: none;
min-height: 300px;
max-height: 80vh;
overflow: hidden;
overflow-y: auto;
// overflow: hidden;
// overflow-y: auto;
box-sizing: border-box;
}
</style>

View File

@ -399,7 +399,7 @@
<div style="padding:5px;display: flex;">
<!-- 手册 -->
<el-tooltip class="item" effect="dark" :content="$t('trials:reading:button:handbooks')" placement="bottom"
v-if="isExistsManual || isHaveKeyFile">
v-if="(isExistsManual || isHaveKeyFile) && readingTaskState < 2">
<div class="tool-wrapper">
<div class="icon" @click.prevent="previewManuals(false)">
<svg-icon icon-class="constitution" class="svg-icon" />
@ -558,7 +558,7 @@
</span>
<div style="height: 100%;margin:0;">
<Manuals :trial-id="trialId" :justKeyDoc="manualsDialog.justKeyDoc" />
<div slot="footer" style="text-align:right;" v-if="openManuals">
<div slot="footer" style="text-align:right;" v-if="openManuals && !ManualsClose">
<!-- 确认 -->
<el-button type="primary" size="mini" @click="handleSubmitKeyDoc">
{{ $t('common:button:confirm') }}</el-button>
@ -904,7 +904,9 @@ export default {
fullScreenIndex: -1,
fullScreenWidth: window.innerWidth - 570 + 'px',
fullScreenHeight: window.innerHeight - 130 + 'px'
fullScreenHeight: window.innerHeight - 130 + 'px',
ManualsClose: false
}
},
@ -1169,6 +1171,7 @@ export default {
let res = await setReadKeyFile(data)
if (res.IsSuccess) {
this.manualsDialog.visible = false
this.ManualsClose = true
}
} catch (err) {
console.log(err)

View File

@ -50,7 +50,8 @@
e,
data: {
TableQuestionId: qs.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: qs.QuestionName
}
})" />
</div>

View File

@ -42,7 +42,8 @@
class="svg-icon svg-readingChart-mini" @click.stop="(e) => handleReadingChart({
e,
data: {
ReportChartTypeEnum: 0
ReportChartTypeEnum: 0,
QuestionName: item.QuestionName
},
})" />
</div>

View File

@ -109,7 +109,8 @@
class="svg-icon svg-readingChart" @click.stop="(e) => handleReadingChart({
e,
data: {
QuestionId: item.Id
QuestionId: item.Id,
QuestionName: item.QuestionName
}
})" />
</div>

View File

@ -111,7 +111,8 @@
e,
data: {
TableQuestionId: question.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: question.QuestionName
}
})" />
</div>

View File

@ -49,7 +49,8 @@
e,
data: {
TableQuestionId: qs.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: qs.QuestionName
}
})" />
</div>
@ -131,7 +132,8 @@
e,
data: {
TableQuestionId: qs.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: qs.QuestionName
}
})" />
</div>
@ -169,7 +171,8 @@
e,
data: {
TableQuestionId: qs.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: qs.QuestionName
}
})" />
</div>

View File

@ -40,7 +40,8 @@
class="svg-icon svg-readingChart-mini" @click.stop="(e) => handleReadingChart({
e,
data: {
ReportChartTypeEnum: 0
ReportChartTypeEnum: 0,
QuestionName: item.QuestionName
},
})" />
</div>

View File

@ -49,7 +49,8 @@
e,
data: {
TableQuestionId: qs.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: qs.QuestionName
}
})" />
</div>
@ -131,7 +132,8 @@
e,
data: {
TableQuestionId: qs.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: qs.QuestionName
}
})" />
</div>
@ -169,7 +171,8 @@
e,
data: {
TableQuestionId: qs.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: qs.QuestionName
}
})" />
</div>

View File

@ -40,7 +40,8 @@
class="svg-icon svg-readingChart-mini" @click.stop="(e) => handleReadingChart({
e,
data: {
ReportChartTypeEnum: 0
ReportChartTypeEnum: 0,
QuestionName: item.QuestionName
},
})" />
</div>

View File

@ -71,7 +71,8 @@
e,
data: {
TableQuestionId: qs.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: qs.QuestionName
}
})" />
</div>
@ -125,7 +126,8 @@
e,
data: {
TableQuestionId: qs.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: qs.QuestionName
}
})" />
</div>

View File

@ -111,7 +111,8 @@
e,
data: {
TableQuestionId: question.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: question.QuestionName
}
})" />
</div>
@ -121,7 +122,7 @@
<QuestionTableFormItem v-for="item in question.Childrens" :key="item.Id" :question="item"
:question-form="questionForm" :reading-task-state="readingTaskState" @setFormItemData="setFormItemData"
@resetFormItemData="resetFormItemData" @handleReadingChart="handleReadingChart"/>
@resetFormItemData="resetFormItemData" @handleReadingChart="handleReadingChart" />
</div>
</template>
<script>

View File

@ -52,7 +52,8 @@
e,
data: {
TableQuestionId: qs.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: qs.QuestionName
}
})" />
</div>

View File

@ -36,7 +36,8 @@
class="svg-icon svg-readingChart" @click.stop="(e) => handleReadingChart({
e,
data: {
QuestionId: question.Id
QuestionId: question.Id,
QuestionName: question.QuestionName
}
})" />
</div>
@ -74,7 +75,8 @@
@click.stop="(e) => handleReadingChart({
e,
data: {
QuestionId: question.Id
QuestionId: question.Id,
QuestionName: question.QuestionName
}
})" />
</div>
@ -186,7 +188,8 @@
@click.stop="(e) => handleReadingChart({
e,
data: {
QuestionId: question.Id
QuestionId: question.Id,
QuestionName: question.QuestionName
}
})" />
</div>

View File

@ -55,7 +55,8 @@
e,
data: {
TableQuestionId: qs.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: qs.QuestionName
}
})" />
</div>

View File

@ -34,7 +34,8 @@
class="svg-icon svg-readingChart-mini" @click.stop="(e) => handleReadingChart({
e,
data: {
ReportChartTypeEnum: 0
ReportChartTypeEnum: 0,
QuestionName: item.QuestionName
},
})" />
</div>

View File

@ -48,7 +48,8 @@
e,
data: {
TableQuestionId: qs.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: qs.QuestionName
}
})" />
</div>

View File

@ -33,7 +33,8 @@
class="svg-icon svg-readingChart-mini" @click.stop="(e) => handleReadingChart({
e,
data: {
ReportChartTypeEnum: 0
ReportChartTypeEnum: 0,
QuestionName: item.QuestionName
},
})" />
</div>

View File

@ -49,7 +49,8 @@
QuestionId: scope.row.RowIndex ? null : scope.row.QuestionId,
TableQuestionId: scope.row.RowIndex ? scope.row.TableQuestionId : null,
RowIndex: scope.row.RowIndex ? scope.row.RowIndex : null,
ReportChartTypeEnum: scope.row.LesionType === 0 && scope.row.ReportLayType === 1 ? 0 : null
ReportChartTypeEnum: scope.row.LesionType === 0 && scope.row.ReportLayType === 1 ? 0 : null,
QuestionName: scope.row.QuestionName
}
})" />
</span>

View File

@ -340,7 +340,7 @@
<div style="margin-left: auto">
<div style="padding: 5px">
<el-tooltip class="item" effect="dark" :content="$t('trials:reading:button:handbooks')" placement="bottom"
v-if="isExistsManual || isHaveKeyFile">
v-if="(isExistsManual || isHaveKeyFile) && readingTaskState < 2">
<div class="tool-wrapper">
<div class="icon" @click.prevent="previewManuals()">
<svg-icon icon-class="constitution" class="svg-icon" />
@ -429,7 +429,7 @@
</span>
<div style="height: 100%; margin: 0">
<Manuals :trial-id="trialId" :justKeyDoc="manualsDialog.justKeyDoc" />
<div slot="footer" style="text-align:right;" v-if="openManuals">
<div slot="footer" style="text-align:right;" v-if="openManuals && !ManualsClose">
<!-- 确认 -->
<el-button type="primary" size="mini" @click="handleSubmitKeyDoc">
{{ $t('common:button:confirm') }}</el-button>
@ -681,7 +681,9 @@ export default {
taskId: '',
fullScreenIndex: -1,
fullScreenWidth: window.innerWidth - 570 + 'px',
fullScreenHeight: window.innerHeight - 128 + 'px'
fullScreenHeight: window.innerHeight - 128 + 'px',
ManualsClose: false
}
},
@ -875,6 +877,7 @@ export default {
let res = await setReadKeyFile(data)
if (res.IsSuccess) {
this.manualsDialog.visible = false
this.ManualsClose = true
}
} catch (err) {
console.log(err)

View File

@ -161,11 +161,12 @@
question.CustomUnit }}</template>
<template slot="append" v-else-if="question.ValueType === 2">%</template>
</el-input>
<svg-icon v-if="question.ShowChartTypeEnum > 0" icon-class="readingChart" class="svg-icon svg-readingChart"
@click.stop="(e) => handleReadingChart({
<svg-icon v-if="question.ShowChartTypeEnum > 0 && $router.currentRoute.query.isReadingTaskViewInOrder === 1"
icon-class="readingChart" class="svg-icon svg-readingChart" @click.stop="(e) => handleReadingChart({
e,
data: {
QuestionId: question.Id
QuestionId: question.Id,
QuestionName: question.QuestionName
}
})" />
</div>

View File

@ -103,12 +103,13 @@
<template slot="append" v-if="question.Unit !== 0">{{ question.Unit !== 4 ? $fd('ValueUnit', question.Unit) :
question.CustomUnit }}</template>
</el-input>
<svg-icon v-if="qs.ShowChartTypeEnum > 0" icon-class="readingChart" class="svg-icon svg-readingChart"
@click.stop="(e) => handleReadingChart({
<svg-icon v-if="qs.ShowChartTypeEnum > 0 && $router.currentRoute.query.isReadingTaskViewInOrder"
icon-class="readingChart" class="svg-icon svg-readingChart" @click.stop="(e) => handleReadingChart({
e,
data: {
TableQuestionId: question.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: question.QuestionName
}
})" />
</div>

View File

@ -35,7 +35,8 @@
QuestionId: scope.row.RowIndex ? null : scope.row.QuestionId,
TableQuestionId: scope.row.RowIndex ? scope.row.TableQuestionId : null,
RowIndex: scope.row.RowIndex ? scope.row.RowIndex : null,
ReportChartTypeEnum: scope.row.LesionType === 0 && scope.row.ReportLayType === 1 ? 0 : null
ReportChartTypeEnum: scope.row.LesionType === 0 && scope.row.ReportLayType === 1 ? 0 : null,
QuestionName: scope.row.QuestionName
}
})" />
</span>

View File

@ -270,7 +270,8 @@
<div style="display: flex;">
<!-- 手册 -->
<div class="tool-item" :title="$t('trials:reading:button:handbooks')"
v-if="taskInfo && (taskInfo.ExistsManual || taskInfo.IsHaveKeyFile)" @click.prevent="previewManuals()">
v-if="taskInfo && (taskInfo.ExistsManual || taskInfo.IsHaveKeyFile) && readingTaskState < 2"
@click.prevent="previewManuals()">
<svg-icon icon-class="constitution" class="svg-icon" />
</div>
<!-- 临床数据 -->
@ -373,7 +374,7 @@
<Manuals :trial-id="trialId" :justKeyDoc="manualsDialog.justKeyDoc" />
<div slot="footer" style="text-align:right;" v-if="openManuals">
<!-- 确认 -->
<el-button type="primary" size="mini" @click="handleSubmitKeyDoc">
<el-button type="primary" size="mini" @click="handleSubmitKeyDoc && !ManualsClose">
{{ $t('common:button:confirm') }}</el-button>
</div>
</div>
@ -642,7 +643,9 @@ export default {
curOperation: {
type: '',
annotation: null
}
},
ManualsClose: false
}
},
computed: {
@ -792,6 +795,7 @@ export default {
let res = await setReadKeyFile(data)
if (res.IsSuccess) {
this.manualsDialog.visible = false
this.ManualsClose = true
}
} catch (err) {
console.log(err)

View File

@ -85,7 +85,8 @@
@click.stop="(e) => handleReadingChart({
e,
data: {
QuestionId: question.Id
QuestionId: question.Id,
QuestionName: question.QuestionName
}
})" />
</div>

View File

@ -45,7 +45,8 @@
class="svg-icon svg-readingChart-mini" @click.stop="(e) => handleReadingChart({
e,
data: {
ReportChartTypeEnum: 0
ReportChartTypeEnum: 0,
QuestionName: table.QuestionName
},
})" />
</div>

View File

@ -44,7 +44,8 @@
e,
data: {
TableQuestionId: qs.Id,
RowIndex: qsForm.RowIndex
RowIndex: qsForm.RowIndex,
QuestionName: question.QuestionName
}
})" />
</div>

View File

@ -49,7 +49,8 @@
QuestionId: scope.row.RowIndex ? null : scope.row.QuestionId,
TableQuestionId: scope.row.RowIndex ? scope.row.TableQuestionId : null,
RowIndex: scope.row.RowIndex ? scope.row.RowIndex : null,
ReportChartTypeEnum: scope.row.LesionType === 0 && scope.row.ReportLayType === 1 ? 0 : null
ReportChartTypeEnum: scope.row.LesionType === 0 && scope.row.ReportLayType === 1 ? 0 : null,
QuestionName: scope.row.QuestionName
}
})" />
</span>

View File

@ -151,11 +151,12 @@
<div style="display: flex;justify-content: space-between;">
<el-input v-if="question.Type === 'calculation'" v-model="questionForm[question.Id]"
@input="value = value.replace(/^\D*(\d*(?:.\d{0,2})?).*$/g, '$1')" disabled />
<svg-icon v-if="question.ShowChartTypeEnum > 0" icon-class="readingChart" class="svg-icon svg-readingChart"
@click.stop="(e) => handleReadingChart({
<svg-icon v-if="question.ShowChartTypeEnum > 0 && taskInfo.IsReadingTaskViewInOrder === 1"
icon-class="readingChart" class="svg-icon svg-readingChart" @click.stop="(e) => handleReadingChart({
e,
data: {
QuestionId: question.Id
QuestionId: question.Id,
QuestionName: question.QuestionName
}
})" />
</div>
@ -175,11 +176,12 @@
{{ question.Unit !== 4 ? $fd('ValueUnit', question.Unit) : question.CustomUnit }}
</template>
</el-input>
<svg-icon v-if="question.ShowChartTypeEnum > 0" icon-class="readingChart" class="svg-icon svg-readingChart"
<svg-icon v-if="question.ShowChartTypeEnum > 0 && taskInfo.IsReadingTaskViewInOrder === 1" icon-class="readingChart" class="svg-icon svg-readingChart"
@click.stop="(e) => handleReadingChart({
e,
data: {
QuestionId: question.Id
QuestionId: question.Id,
QuestionName: question.QuestionName
}
})" />
<!-- 测量 -->
@ -257,11 +259,12 @@
question.CustomUnit }}</template>
<template slot="append" v-else-if="question.ValueType === 2">%</template>
</el-input>
<svg-icon v-if="question.ShowChartTypeEnum > 0" icon-class="readingChart" class="svg-icon svg-readingChart"
<svg-icon v-if="question.ShowChartTypeEnum > 0 && taskInfo.IsReadingTaskViewInOrder === 1" icon-class="readingChart" class="svg-icon svg-readingChart"
@click.stop="(e) => handleReadingChart({
e,
data: {
QuestionId: question.Id
QuestionId: question.Id,
QuestionName: question.QuestionName
}
})" />
</div>
@ -402,7 +405,8 @@ export default {
// currentPath: '',
// currentType: '',
markTableQuestions: [],
parentQsId: ''
parentQsId: '',
taskInfo: {}
}
},
computed: {
@ -469,6 +473,7 @@ export default {
mounted() {
var digitPlaces = Number(localStorage.getItem('digitPlaces'))
this.digitPlaces = digitPlaces === -1 ? this.digitPlaces : digitPlaces
this.taskInfo = JSON.parse(sessionStorage.getItem('taskInfo'))
// if (this.question.Type === 'class') {
// this.ClassifyAlgorithmsList = JSON.parse(this.question.ClassifyAlgorithms)
// }
@ -530,7 +535,6 @@ export default {
},
methods: {
handleReadingChart(row) {
console.log(row, 'row')
this.$emit('handleReadingChart', row)
},
numberInput(id) {

View File

@ -78,12 +78,13 @@
<div style="display: flex;justify-content: space-between;">
<el-input v-if="question.Type === 'calculation'" v-model="questionForm[question.Id]"
oninput="value=value.replace(/^\D*(\d*(?:.\d{0,2})?).*$/g, '$1')" disabled />
<svg-icon v-if="question.ShowChartTypeEnum > 0" icon-class="readingChart" class="svg-icon svg-readingChart"
@click.stop="(e) => handleReadingChart({
<svg-icon v-if="question.ShowChartTypeEnum > 0 && taskInfo.IsReadingTaskViewInOrder === 1"
icon-class="readingChart" class="svg-icon svg-readingChart" @click.stop="(e) => handleReadingChart({
e,
data: {
TableQuestionId: question.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: question.QuestionName
}
})" />
</div>
@ -103,12 +104,13 @@
{{ question.Unit !== 4 ? $fd('ValueUnit', question.Unit) : question.CustomUnit }}
</template>
</el-input>
<svg-icon v-if="question.ShowChartTypeEnum > 0" icon-class="readingChart" class="svg-icon svg-readingChart"
@click.stop="(e) => handleReadingChart({
<svg-icon v-if="question.ShowChartTypeEnum > 0 && taskInfo.IsReadingTaskViewInOrder === 1"
icon-class="readingChart" class="svg-icon svg-readingChart" @click.stop="(e) => handleReadingChart({
e,
data: {
TableQuestionId: question.Id,
RowIndex: question.RowIndex
RowIndex: question.RowIndex,
QuestionName: question.QuestionName
}
})" />
<!-- 测量 -->
@ -180,12 +182,13 @@
:
question.CustomUnit }}</template>
</el-input>
<svg-icon v-if="question.ShowChartTypeEnum > 0" icon-class="readingChart" class="svg-icon svg-readingChart"
@click.stop="(e) => handleReadingChart({
<svg-icon v-if="question.ShowChartTypeEnum > 0 && taskInfo.IsReadingTaskViewInOrder === 1"
icon-class="readingChart" class="svg-icon svg-readingChart" @click.stop="(e) => handleReadingChart({
e,
data: {
TableQuestionId: question.Id,
RowIndex: questionForm.RowIndex
RowIndex: questionForm.RowIndex,
QuestionName: question.QuestionName
}
})" />
</div>
@ -285,7 +288,8 @@ export default {
QuestionsList: [],
QuestionsForm: {},
digitPlaces: 2,
rowId: ''
rowId: '',
taskInfo: {}
}
},
watch: {
@ -310,6 +314,7 @@ export default {
}
},
mounted() {
this.taskInfo = JSON.parse(sessionStorage.getItem('taskInfo'))
var digitPlaces = Number(localStorage.getItem('digitPlaces'))
this.digitPlaces = digitPlaces === -1 ? this.digitPlaces : digitPlaces
if (this.question.Type === 'upload' || this.question.Type === 'screenshot') {

View File

@ -32,7 +32,8 @@
QuestionId: scope.row.RowIndex ? null : scope.row.QuestionId,
TableQuestionId: scope.row.RowIndex ? scope.row.TableQuestionId : null,
RowIndex: scope.row.RowIndex ? scope.row.RowIndex : null,
ReportChartTypeEnum: scope.row.LesionType === 0 && scope.row.ReportLayType === 1 ? 0 : null
ReportChartTypeEnum: scope.row.LesionType === 0 && scope.row.ReportLayType === 1 ? 0 : null,
QuestionName: scope.row.QuestionName
}
})" />
</span>

View File

@ -85,7 +85,8 @@
@click.stop="(e) => handleReadingChart({
e,
data: {
QuestionId: question.Id
QuestionId: question.Id,
QuestionName: question.QuestionName
}
})" />
</div>

View File

@ -46,7 +46,8 @@
class="svg-icon svg-readingChart-mini" @click.stop="(e) => handleReadingChart({
e,
data: {
ReportChartTypeEnum: 0
ReportChartTypeEnum: 0,
QuestionName: table.QuestionName
},
})" />
</div>

View File

@ -54,7 +54,8 @@
e,
data: {
TableQuestionId: qs.Id,
RowIndex: qsForm.RowIndex
RowIndex: qsForm.RowIndex,
QuestionName: qs.QuestionName
}
})" />
</div>

View File

@ -117,7 +117,8 @@
<div style="display: flex;">
<!-- 手册 -->
<div class="tool-item" :title="$t('trials:reading:button:handbooks')"
v-if="taskInfo && (taskInfo.ExistsManual || taskInfo.IsHaveKeyFile)" @click.prevent="previewManuals">
v-if="taskInfo && (taskInfo.ExistsManual || taskInfo.IsHaveKeyFile) && readingTaskState < 2"
@click.prevent="previewManuals">
<svg-icon icon-class="constitution" class="svg-icon" />
</div>
<!-- 个性化配置 -->
@ -255,7 +256,7 @@
</span>
<div style="height: 100%;margin:0;">
<Manuals :trial-id="trialId" :justKeyDoc="manualsDialog.justKeyDoc" />
<div slot="footer" style="text-align:right;" v-if="openManuals">
<div slot="footer" style="text-align:right;" v-if="openManuals && !ManualsClose">
<!-- 确认 -->
<el-button type="primary" size="mini" @click="handleSubmitKeyDoc">
{{ $t('common:button:confirm') }}</el-button>
@ -391,7 +392,9 @@ export default {
},
loading: false,
manualsDialog: { visible: false, isFullscreen: false },
trialId: null
trialId: null,
ManualsClose: false
}
},
computed: {
@ -499,6 +502,7 @@ export default {
let res = await setReadKeyFile(data)
if (res.IsSuccess) {
this.manualsDialog.visible = false
this.ManualsClose = true
}
} catch (err) {
console.log(err)

View File

@ -31,6 +31,7 @@
QuestionId: scope.row.RowIndex ? null : scope.row.QuestionId,
TableQuestionId: scope.row.RowIndex ? scope.row.TableQuestionId : null,
RowIndex: scope.row.RowIndex ? scope.row.RowIndex : null,
QuestionName: scope.row.QuestionName
}
})" />
</span>