转换任务表单重置时弹出提示
continuous-integration/drone/push Build is running Details

main
wangxiaoshuang 2025-09-03 15:47:16 +08:00
parent 5c91e7a00a
commit e1fa3a673c
1 changed files with 135 additions and 149 deletions

View File

@ -1,54 +1,39 @@
<template>
<div ref="container" style="width:100%;height:100%" class="dicom-container">
<!-- 访视阅片 -->
<div v-if="(isReadingTaskViewInOrder === 1 || ((isReadingTaskViewInOrder !== 1) && isShow)) && readingCategory=== 1 && CriterionType !== 0" class="reading-wrapper">
<div
v-if="(isReadingTaskViewInOrder === 1 || ((isReadingTaskViewInOrder !== 1) && isShow)) && readingCategory === 1 && CriterionType !== 0"
class="reading-wrapper">
<el-tabs v-model="activeName" v-loading="loading" :before-leave="beforeLeave">
<!-- 阅片 -->
<el-tab-pane :label="$t('trials:reading:tabTitle:review')" name="read">
<ReadPage
v-if="tabs.includes('read')"
:trial-id="trialId"
:visit-task-id="visitTaskId"
:subject-id="subjectId"
:subject-code="subjectCode"
:is-show="isShow"
:question-form-change-state="questionFormChangeState"
:question-form-change-num="questionFormChangeNum"
<ReadPage v-if="tabs.includes('read')" :trial-id="trialId" :visit-task-id="visitTaskId"
:subject-id="subjectId" :subject-code="subjectCode" :is-show="isShow"
:question-form-change-state="questionFormChangeState" :question-form-change-num="questionFormChangeNum"
:is-reading-show-subject-info="isReadingShowSubjectInfo"
:is-reading-task-view-in-order="isReadingTaskViewInOrder"
:is-exists-clinical-data="isExistsClinicalData"
:is-exists-no-dicom-file="isExistsNoDicomFile"
:is-exists-manual="isExistsManual"
:ise-c-r-f-show-in-dicom-reading="IseCRFShowInDicomReading"
@previewCD="previewCD"
/>
:is-reading-task-view-in-order="isReadingTaskViewInOrder" :is-exists-clinical-data="isExistsClinicalData"
:is-exists-no-dicom-file="isExistsNoDicomFile" :is-exists-manual="isExistsManual"
:ise-c-r-f-show-in-dicom-reading="IseCRFShowInDicomReading" @previewCD="previewCD" />
</el-tab-pane>
<!-- 报告 -->
<el-tab-pane v-if="!IseCRFShowInDicomReading" :label="$t('trials:reading:tabTitle:report')" name="report">
<ReportPage v-if="tabs.includes('report') && isShow" ref="reportPage" :question-form-change-state="questionFormChangeState" :visit-task-id="visitTaskId" />
<ReportPage v-if="tabs.includes('report') && isShow" ref="reportPage"
:question-form-change-state="questionFormChangeState" :visit-task-id="visitTaskId" />
</el-tab-pane>
</el-tabs>
</div>
<div v-if="(isReadingTaskViewInOrder === 1 || ((isReadingTaskViewInOrder !== 1) && isShow)) && readingCategory=== 1 && CriterionType === 0" class="reading-wrapper">
<div
v-if="(isReadingTaskViewInOrder === 1 || ((isReadingTaskViewInOrder !== 1) && isShow)) && readingCategory === 1 && CriterionType === 0"
class="reading-wrapper">
<el-tabs v-model="activeName" v-loading="loading" :before-leave="beforeLeaveCustomize">
<!-- 阅片 -->
<el-tab-pane :label="$t('trials:reading:tabTitle:review')" name="read">
<CustomizeReadPage
v-if="tabs.includes('read')"
:trial-id="trialId"
:trial-reading-criterion-id="TrialReadingCriterionId"
:visit-task-id="visitTaskId"
:subject-id="subjectId"
:subject-code="subjectCode"
:is-show="isShow"
:is-reading-show-subject-info="isReadingShowSubjectInfo"
<CustomizeReadPage v-if="tabs.includes('read')" :trial-id="trialId"
:trial-reading-criterion-id="TrialReadingCriterionId" :visit-task-id="visitTaskId" :subject-id="subjectId"
:subject-code="subjectCode" :is-show="isShow" :is-reading-show-subject-info="isReadingShowSubjectInfo"
:is-reading-task-view-in-order="isReadingTaskViewInOrder"
:ise-c-r-f-show-in-dicom-reading="IseCRFShowInDicomReading"
:is-exists-clinical-data="isExistsClinicalData"
:is-exists-no-dicom-file="isExistsNoDicomFile"
:is-exists-manual="isExistsManual"
@previewCD="previewCD"
/>
:ise-c-r-f-show-in-dicom-reading="IseCRFShowInDicomReading" :is-exists-clinical-data="isExistsClinicalData"
:is-exists-no-dicom-file="isExistsNoDicomFile" :is-exists-manual="isExistsManual" @previewCD="previewCD" />
</el-tab-pane>
<!-- 报告 -->
<el-tab-pane v-if="!IseCRFShowInDicomReading" :label="$t('trials:reading:tabTitle:report')" name="report">
@ -57,69 +42,40 @@
</el-tabs>
</div>
<!-- 全局阅片 -->
<GlobalReview
v-else-if="isShow && readingCategory === 2"
:trial-id="trialId"
:subject-id="subjectId"
:visit-task-id="visitTaskId"
:reading-category="readingCategory"
:subject-code="subjectCode"
:task-blind-name="taskBlindName"
:is-reading-show-subject-info="isReadingShowSubjectInfo"
<GlobalReview v-else-if="isShow && readingCategory === 2" :trial-id="trialId" :subject-id="subjectId"
:visit-task-id="visitTaskId" :reading-category="readingCategory" :subject-code="subjectCode"
:task-blind-name="taskBlindName" :is-reading-show-subject-info="isReadingShowSubjectInfo"
:is-reading-show-previous-results="isReadingShowPreviousResults"
:is-exists-clinical-data="isExistsClinicalData"
/>
:is-exists-clinical-data="isExistsClinicalData" />
<!-- 裁判阅片 -->
<AdReview
v-else-if="isShow && readingCategory === 4"
:trial-id="trialId"
:subject-id="subjectId"
:visit-task-id="visitTaskId"
:reading-category="readingCategory"
:subject-code="subjectCode"
:task-blind-name="taskBlindName"
:is-reading-show-subject-info="isReadingShowSubjectInfo"
<AdReview v-else-if="isShow && readingCategory === 4" :trial-id="trialId" :subject-id="subjectId"
:visit-task-id="visitTaskId" :reading-category="readingCategory" :subject-code="subjectCode"
:task-blind-name="taskBlindName" :is-reading-show-subject-info="isReadingShowSubjectInfo"
:is-reading-show-previous-results="isReadingShowPreviousResults"
:is-exists-clinical-data="isExistsClinicalData"
/>
:is-exists-clinical-data="isExistsClinicalData" />
<!-- 肿瘤学阅片 -->
<OncologyReview
v-else-if="isShow && readingCategory === 5"
:trial-id="trialId"
:subject-id="subjectId"
:visit-task-id="visitTaskId"
:reading-category="readingCategory"
:subject-code="subjectCode"
:task-blind-name="taskBlindName"
:is-reading-show-subject-info="isReadingShowSubjectInfo"
<OncologyReview v-else-if="isShow && readingCategory === 5" :trial-id="trialId" :subject-id="subjectId"
:visit-task-id="visitTaskId" :reading-category="readingCategory" :subject-code="subjectCode"
:task-blind-name="taskBlindName" :is-reading-show-subject-info="isReadingShowSubjectInfo"
:is-reading-show-previous-results="isReadingShowPreviousResults"
:is-exists-clinical-data="isExistsClinicalData"
/>
:is-exists-clinical-data="isExistsClinicalData" />
<el-dialog
:visible.sync="dialogVisible"
:custom-class="isFullscreen?'full-dialog-container':'dialog-container'"
:show-close="false"
:close-on-click-modal="false"
:fullscreen="isFullscreen"
>
<el-dialog :visible.sync="dialogVisible" :custom-class="isFullscreen ? 'full-dialog-container' : 'dialog-container'"
:show-close="false" :close-on-click-modal="false" :fullscreen="isFullscreen">
<span slot="title" class="dialog-footer">
<!-- 当前阅片任务存在临床数据请查看若已查看请点击确认 -->
<span v-if="!closeCDVisible">{{ $t('trials:reading:dagTitle:msg1') }}</span>
<div style="position: absolute;right: 20px;top: 10px;">
<svg-icon :icon-class="isFullscreen?'exit-fullscreen':'fullscreen'" style="cursor: pointer;font-size: 20px;" @click="isFullscreen=!isFullscreen" />
<svg-icon v-if="closeCDVisible" icon-class="dClose" style="cursor: pointer;font-size: 25px;margin-left: 10px;" @click="dialogVisible = false" />
<svg-icon :icon-class="isFullscreen ? 'exit-fullscreen' : 'fullscreen'"
style="cursor: pointer;font-size: 20px;" @click="isFullscreen = !isFullscreen" />
<svg-icon v-if="closeCDVisible" icon-class="dClose" style="cursor: pointer;font-size: 25px;margin-left: 10px;"
@click="dialogVisible = false" />
</div>
</span>
<div style="height: 100%;margin:0;">
<ClinicalData
v-if="dialogVisible"
:trial-id="trialId"
:subject-id="subjectId"
:visit-task-id="cdVisitTaskId"
:is-reading-show-subject-info="isReadingShowSubjectInfo"
/>
<ClinicalData v-if="dialogVisible" :trial-id="trialId" :subject-id="subjectId" :visit-task-id="cdVisitTaskId"
:is-reading-show-subject-info="isReadingShowSubjectInfo" />
</div>
<span v-if="!closeCDVisible" slot="footer" class="dialog-footer">
<!-- 确认 -->
@ -127,12 +83,7 @@
</span>
</el-dialog>
<el-dialog
:visible.sync="tipVisible"
:show-close="false"
:close-on-click-modal="false"
width="500px"
>
<el-dialog :visible.sync="tipVisible" :show-close="false" :close-on-click-modal="false" width="500px">
<span slot="title" class="dialog-footer">
<!-- 提示 -->
{{ $t('trials:iRecist:warnning:msg44') }}
@ -257,6 +208,25 @@ export default {
this.dialogVisible = true
this.cdVisitTaskId = taskId
})
DicomEvent.$on('refreshStudyListMeasureData', () => {
var param = {
subjectId: this.subjectId,
trialId: this.trialId,
subjectCode: this.subjectCode,
visitTaskId: this.$router.currentRoute.query.visitTaskId,
trialReadingCriterionId: this.$router.currentRoute.query.TrialReadingCriterionId
}
getNextTask(param).then(res => {
this.$nextTick(() => {
this.isShow = true
this.loading = false
if (res.Result.IsFirstChangeTask && res.Result.ReadingTaskState === 0) {
this.tipVisible = true
}
})
})
})
this.activeName = this.$router.currentRoute.query.tabName ? this.$router.currentRoute.query.tabName : 'read'
this.tabs.push(this.activeName)
this.trialId = this.$router.currentRoute.query.trialId
@ -506,6 +476,7 @@ export default {
/deep/.el-message-box__headerbtn {
display: none;
}
.dicom-container {
.reading-wrapper {
width: 100%;
@ -513,38 +484,47 @@ export default {
padding: 0 5px;
box-sizing: border-box;
background-color: #000;
/deep/.el-tabs {
box-sizing: border-box;
height: 100%;
display: flex;
flex-direction: column;
.el-tabs__item {
color: #fff;
}
.el-tabs__header {
height: 50px;
margin: 0px;
box-sizing: border-box;
}
.el-tabs__content {
flex: 1;
margin: 0px;
box-sizing: border-box;
}
.el-tabs__item {
color: #fff;
}
.el-tab-pane {
height: 100%;
}
}
/deep/.hot-keys-label {
color: #dfdfdf !important;
}
/deep/.shortcut-key-input span {
color: #dfdfdf !important;
}
// /deep/ .el-dialog{
// background: #1e1e1e;
// /deep/ .el-dialog__body{
@ -556,32 +536,39 @@ export default {
background: #1e1e1e;
border: 1px solid #ddd;
color: #ddd;
.el-dialog__title {
color: #fff;
}
.el-input .el-input__inner {
background-color: transparent;
color: #ddd;
border: 1px solid #5e5e5e;
}
.el-input.is-disabled .el-input__inner {
background-color: #646464a1;
}
.el-form-item__label {
color: #dfdfdf
}
}
}
/deep/.dialog-container {
margin-top: 50px !important;
width: 75%;
height: 80%;
}
/deep/.el-dialog__body {
padding: 20px;
height: calc(100% - 120px);
}
.el-dialog__header {
position: relative;
}
@ -592,5 +579,4 @@ export default {
height: calc(100% - 120px);
}
}
</style>