阅片上传下载按钮添加
continuous-integration/drone/push Build encountered an error
Details
continuous-integration/drone/push Build encountered an error
Details
parent
1022fa2888
commit
d8315fbfff
|
@ -303,6 +303,38 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div
|
||||||
|
class="tool-item"
|
||||||
|
:title="$t('trials:reading:button:upload')"
|
||||||
|
v-if="trialCriterion.ImageUploadEnum > 0 && readingTaskState < 2"
|
||||||
|
v-hasPermi="['role:ir']"
|
||||||
|
>
|
||||||
|
<div class="tool-wrapper">
|
||||||
|
<div class="icon" @click.prevent="openUploadImage('upload')">
|
||||||
|
<i class="el-icon-upload2 svg-icon" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div
|
||||||
|
v-if="trialCriterion.ImageDownloadEnum > 0"
|
||||||
|
v-hasPermi="[
|
||||||
|
'role:ir',
|
||||||
|
'role:mim',
|
||||||
|
'role:mc',
|
||||||
|
'role:pm',
|
||||||
|
'role:apm',
|
||||||
|
'role:ea',
|
||||||
|
'role:qa',
|
||||||
|
]"
|
||||||
|
class="tool-item"
|
||||||
|
:title="$t('trials:reading:button:download')"
|
||||||
|
>
|
||||||
|
<div class="tool-wrapper">
|
||||||
|
<div class="icon" @click.prevent="openUploadImage('download')">
|
||||||
|
<i class="el-icon-download svg-icon" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<!-- 伪彩 -->
|
<!-- 伪彩 -->
|
||||||
<template v-if="readingTool === 2">
|
<template v-if="readingTool === 2">
|
||||||
<colorMap v-show="isFusion" ref="colorMap" @setColorMap="setColorMap" @voiChange="voiChange" />
|
<colorMap v-show="isFusion" ref="colorMap" @setColorMap="setColorMap" @voiChange="voiChange" />
|
||||||
|
@ -526,10 +558,28 @@
|
||||||
width="850px" >
|
width="850px" >
|
||||||
<FusionForm v-if="fusionVisible" :activeTaskIndex="activeTaskIndex" :taskList="visitTaskList" @close="closeFusion" @fusion="handleFusion" />
|
<FusionForm v-if="fusionVisible" :activeTaskIndex="activeTaskIndex" :taskList="visitTaskList" @close="closeFusion" @fusion="handleFusion" />
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
|
<upload-dicom-and-nonedicom
|
||||||
|
v-if="uploadImageVisible"
|
||||||
|
:subject-id="uploadSubjectId"
|
||||||
|
:subject-code="uploadSubjectCode"
|
||||||
|
:criterion="uploadTrialCriterion"
|
||||||
|
:visible.sync="uploadImageVisible"
|
||||||
|
:visit-task-id="taskId"
|
||||||
|
:is-reading-task-view-in-order="isReadingTaskViewInOrder"
|
||||||
|
/>
|
||||||
|
<download-dicom-and-nonedicom
|
||||||
|
v-if="downloadImageVisible"
|
||||||
|
:subject-id="uploadSubjectId"
|
||||||
|
:subject-code="uploadSubjectCode"
|
||||||
|
:criterion="uploadTrialCriterion"
|
||||||
|
:task-id="taskId"
|
||||||
|
:visible.sync="downloadImageVisible"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { getRelatedVisitTask, getReadingVisitStudyList, getTableAnswerRowInfoList, deleteCustomTag } from '@/api/trials'
|
import { getRelatedVisitTask, getReadingVisitStudyList, getTableAnswerRowInfoList, deleteCustomTag, getCriterionReadingInfo } from '@/api/trials'
|
||||||
import { getDoctorShortcutKey, getUserWLTemplateList } from '@/api/user'
|
import { getDoctorShortcutKey, getUserWLTemplateList } from '@/api/user'
|
||||||
import { getCustomTag, submitCustomTag } from '@/api/reading'
|
import { getCustomTag, submitCustomTag } from '@/api/reading'
|
||||||
import {
|
import {
|
||||||
|
@ -565,6 +615,8 @@ import ClinicalData from '@/views/trials/trials-panel/reading/clinical-data'
|
||||||
import FusionForm from './FusionForm.vue'
|
import FusionForm from './FusionForm.vue'
|
||||||
import colorMap from './colorMap.vue'
|
import colorMap from './colorMap.vue'
|
||||||
import RectangleROITool from './tools/RectangleROITool'
|
import RectangleROITool from './tools/RectangleROITool'
|
||||||
|
import uploadDicomAndNonedicom from '@/components/uploadDicomAndNonedicom'
|
||||||
|
import downloadDicomAndNonedicom from '@/components/downloadDicomAndNonedicom'
|
||||||
const { visibility } = annotation
|
const { visibility } = annotation
|
||||||
const { ViewportType, Events } = Enums
|
const { ViewportType, Events } = Enums
|
||||||
const renderingEngineId = 'myRenderingEngine'
|
const renderingEngineId = 'myRenderingEngine'
|
||||||
|
@ -638,7 +690,9 @@ export default {
|
||||||
Others,
|
Others,
|
||||||
ClinicalData,
|
ClinicalData,
|
||||||
FusionForm,
|
FusionForm,
|
||||||
colorMap
|
colorMap,
|
||||||
|
downloadDicomAndNonedicom,
|
||||||
|
uploadDicomAndNonedicom,
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
@ -711,6 +765,17 @@ export default {
|
||||||
fusionSerieId: {},
|
fusionSerieId: {},
|
||||||
loadingText: null,
|
loadingText: null,
|
||||||
// resetAnnotation: false , // 是否初始化标记 (融合时使用)
|
// resetAnnotation: false , // 是否初始化标记 (融合时使用)
|
||||||
|
|
||||||
|
// 上传
|
||||||
|
downloadImageVisible: false,
|
||||||
|
uploadImageVisible: false,
|
||||||
|
uploadSubjectId: null,
|
||||||
|
uploadSubjectCode: null,
|
||||||
|
uploadTrialCriterion: {},
|
||||||
|
uploadStatus: 'upload',
|
||||||
|
taskId: '',
|
||||||
|
isReadingTaskViewInOrder: null,
|
||||||
|
trialCriterion: {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
|
@ -739,6 +804,7 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
|
currentReadingTaskState(){console.log(this.currentReadingTaskState,'currentReadingTaskState')},
|
||||||
activeTaskId: {
|
activeTaskId: {
|
||||||
immediate: true,
|
immediate: true,
|
||||||
handler(id) {
|
handler(id) {
|
||||||
|
@ -788,6 +854,7 @@ export default {
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.taskInfo = JSON.parse(localStorage.getItem('taskInfo'))
|
this.taskInfo = JSON.parse(localStorage.getItem('taskInfo'))
|
||||||
|
this.isReadingTaskViewInOrder = this.taskInfo.IsReadingTaskViewInOrder
|
||||||
this.criterionType = this.taskInfo.CriterionType
|
this.criterionType = this.taskInfo.CriterionType
|
||||||
const digitPlaces = Number(localStorage.getItem('digitPlaces'))
|
const digitPlaces = Number(localStorage.getItem('digitPlaces'))
|
||||||
this.digitPlaces = digitPlaces === -1 ? this.digitPlaces : digitPlaces
|
this.digitPlaces = digitPlaces === -1 ? this.digitPlaces : digitPlaces
|
||||||
|
@ -812,6 +879,7 @@ export default {
|
||||||
this.initLoader()
|
this.initLoader()
|
||||||
this.getWwcTpl()
|
this.getWwcTpl()
|
||||||
this.getHotKeys()
|
this.getHotKeys()
|
||||||
|
this.getTrialCriterion()
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
@ -2851,6 +2919,27 @@ export default {
|
||||||
closeFusion() {
|
closeFusion() {
|
||||||
this.fusionVisible = false
|
this.fusionVisible = false
|
||||||
},
|
},
|
||||||
|
getTrialCriterion() {
|
||||||
|
getCriterionReadingInfo({
|
||||||
|
TrialId: this.$route.query.trialId,
|
||||||
|
TrialReadingCriterionId: this.$route.query.TrialReadingCriterionId
|
||||||
|
})
|
||||||
|
.then((res) => {
|
||||||
|
this.trialCriterion = res.Result
|
||||||
|
})
|
||||||
|
.catch(() => {})
|
||||||
|
},
|
||||||
|
openUploadImage(status) {
|
||||||
|
const idx = this.visitTaskList.findIndex(i => i.IsCurrentTask)
|
||||||
|
if (idx > -1) {
|
||||||
|
this.taskId = this.visitTaskList[idx].VisitTaskId
|
||||||
|
}
|
||||||
|
this.uploadSubjectCode = localStorage.getItem("subjectCode")
|
||||||
|
this.uploadSubjectId = localStorage.getItem("subjectId")
|
||||||
|
this.uploadTrialCriterion = this.trialCriterion
|
||||||
|
this.uploadStatus = status
|
||||||
|
this[`${status}ImageVisible`] = true
|
||||||
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
Loading…
Reference in New Issue