Merge branch 'main' of https://gitea.frp.extimaging.com/XCKJ/irc_web
commit
bc9edcaa89
|
@ -17,8 +17,9 @@
|
|||
class="icon"
|
||||
:class="[activeTool==='WindowLevel'?'tool_active':'']"
|
||||
data-tool="WindowLevel"
|
||||
@click.prevent="setBasicToolActive('WindowLevel')"
|
||||
>
|
||||
<svg-icon icon-class="reverse" class="svg-icon" @click.prevent="setBasicToolActive('WindowLevel')" />
|
||||
<svg-icon icon-class="reverse" class="svg-icon" />
|
||||
<i class="el-icon-arrow-down" style="color:#fff;" />
|
||||
</div>
|
||||
<!-- 窗宽窗位 -->
|
||||
|
@ -60,8 +61,9 @@
|
|||
<div
|
||||
class="icon"
|
||||
data-tool="reverse"
|
||||
@click.prevent="toggleInvert"
|
||||
>
|
||||
<svg-icon icon-class="reversecolor" class="svg-icon" @click.prevent="toggleInvert" />
|
||||
<svg-icon icon-class="reversecolor" class="svg-icon" />
|
||||
</div>
|
||||
<!-- 反色 -->
|
||||
<div class="text">{{ $t('trials:reading:button:reverseColor') }}</div>
|
||||
|
@ -74,8 +76,9 @@
|
|||
class="icon"
|
||||
:class="[activeTool==='Zoom'?'tool_active':'']"
|
||||
data-tool="Zoom"
|
||||
@click.prevent="setBasicToolActive('Zoom')"
|
||||
>
|
||||
<svg-icon icon-class="magnifier" class="svg-icon" @click.prevent="setBasicToolActive('Zoom')" />
|
||||
<svg-icon icon-class="magnifier" class="svg-icon" />
|
||||
</div>
|
||||
<!-- 缩放 -->
|
||||
<div class="text">{{ $t('trials:reading:button:zoom') }}</div>
|
||||
|
@ -88,8 +91,9 @@
|
|||
class="icon"
|
||||
:class="[activeTool==='Pan'?'tool_active':'']"
|
||||
data-tool="Pan"
|
||||
@click.prevent="setBasicToolActive('Pan')"
|
||||
>
|
||||
<svg-icon icon-class="move" class="svg-icon" @click.prevent="setBasicToolActive('Pan')" />
|
||||
<svg-icon icon-class="move" class="svg-icon" />
|
||||
</div>
|
||||
<!-- 移动 -->
|
||||
<div class="text">{{ $t('trials:reading:button:move') }}</div>
|
||||
|
@ -103,8 +107,9 @@
|
|||
class="icon"
|
||||
:class="[activeTool==='Rotate'?'tool_active':'']"
|
||||
data-tool="Pan"
|
||||
@click.prevent="setBasicToolActive('TrackballRotate')"
|
||||
>
|
||||
<svg-icon icon-class="rotate" class="svg-icon" @click.prevent="setBasicToolActive('TrackballRotate')" />
|
||||
<svg-icon icon-class="rotate" class="svg-icon" />
|
||||
<i class="el-icon-arrow-down" style="color:#fff;" />
|
||||
</div>
|
||||
<!-- 移动 -->
|
||||
|
@ -135,8 +140,9 @@
|
|||
class="icon"
|
||||
:class="[activeTool===tool.toolName?'tool_active':'']"
|
||||
@mouseenter="enter($event,tool.toolName)"
|
||||
@click.prevent="setMeasureToolActive(tool.toolName)"
|
||||
>
|
||||
<svg-icon :icon-class="tool.icon" class="svg-icon" @click.prevent="setMeasureToolActive(tool.toolName)" />
|
||||
<svg-icon :icon-class="tool.icon" class="svg-icon" />
|
||||
</div>
|
||||
<div class="text">{{ tool.text }}</div>
|
||||
</div>
|
||||
|
@ -181,7 +187,7 @@
|
|||
<div class="dropdown">
|
||||
<div
|
||||
id="colorBar"
|
||||
class="icon"
|
||||
|
||||
style="display: flex;align-items: center;width:266px"
|
||||
>
|
||||
<canvas id="colorBarCanvas" />
|
||||
|
@ -2080,7 +2086,7 @@ export default {
|
|||
cursor: pointer;
|
||||
text-align: center;
|
||||
.svg-icon{
|
||||
font-size:20px;
|
||||
font-size:25px;
|
||||
color:#ddd;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -53,8 +53,8 @@ export default {
|
|||
measurements: [],
|
||||
currentQsId: '',
|
||||
pet5PSId: '',
|
||||
pet5PSCommentsId:'',
|
||||
calculatePet5PS:null,
|
||||
pet5PSCommentsId: '',
|
||||
calculatePet5PS: null,
|
||||
liverSuvmaxId: '',
|
||||
lungSuvmaxId: '',
|
||||
suvmaxId: '',
|
||||
|
@ -284,7 +284,7 @@ export default {
|
|||
}
|
||||
this.$emit('setNonTargetMeasurementStatus', { status: true, toolName: 'CircleROI' })
|
||||
},
|
||||
|
||||
|
||||
removeAnnotation(obj) {
|
||||
console.log('question_removeAnnotation')
|
||||
const { Id } = obj
|
||||
|
@ -397,18 +397,18 @@ export default {
|
|||
},
|
||||
setFormItemData(obj) {
|
||||
this.questionForm[obj.key] = obj.val
|
||||
if(obj.key === this.pet5PSId){
|
||||
if (obj.key === this.pet5PSId) {
|
||||
this.setPet5PSCommentDisplay()
|
||||
}
|
||||
},
|
||||
setPet5PSCommentDisplay(){
|
||||
if( this.pet5PSCommentsId && this.pet5PSId ){
|
||||
setPet5PSCommentDisplay() {
|
||||
if (this.pet5PSCommentsId && this.pet5PSId) {
|
||||
for (let i = 0; i < this.questions[0].Childrens[0].Childrens.length; i++) {
|
||||
if (this.questions[0].Childrens[0].Childrens[i].QuestionType === 59) {
|
||||
if(this.calculatePet5PS && this.calculatePet5PS !== this.questionForm[this.pet5PSId]){
|
||||
if (this.calculatePet5PS && this.calculatePet5PS !== this.questionForm[this.pet5PSId]) {
|
||||
this.questions[0].Childrens[0].Childrens[i].ShowQuestion = 0
|
||||
this.questions[0].Childrens[0].Childrens[i].IsRequired = 0
|
||||
}else{
|
||||
} else {
|
||||
this.questions[0].Childrens[0].Childrens[i].ShowQuestion = 2
|
||||
this.questions[0].Childrens[0].Childrens[i].IsRequired = 3
|
||||
this.questionForm[this.pet5PSCommentsId] = ''
|
||||
|
@ -443,7 +443,7 @@ export default {
|
|||
// 本访视点病灶的SUVmax(所有病灶中最大的)<纵隔血池SUVmax 2分
|
||||
// this.questionForm[this.pet5PSId] = '2'
|
||||
return '2'
|
||||
}else{
|
||||
} else {
|
||||
// this.questionForm[this.pet5PSId] = ''
|
||||
return ''
|
||||
}
|
||||
|
|
|
@ -31,8 +31,8 @@
|
|||
v-model="questionForm.LesionType"
|
||||
filterable
|
||||
:disabled="!isCurrentTask || readingTaskState>=2 || !isBaseLineTask"
|
||||
@change="((val)=>{lesionTypeChange(val)})"
|
||||
:popper-append-to-body="false"
|
||||
@change="((val)=>{lesionTypeChange(val)})"
|
||||
>
|
||||
|
||||
<el-option
|
||||
|
@ -89,8 +89,8 @@
|
|||
filterable
|
||||
:placeholder="qs.QuestionMark === 8 ? $t('common:placeholder:selectorsearch') : $t('common:placeholder:select')"
|
||||
:disabled="!isCurrentTask || readingTaskState>=2 || qs.QuestionMark === 0 || qs.QuestionMark === 1 || qs.QuestionMark === 2 || qs.QuestionMark === 5 || (qs.QuestionMark === 6 && (isCurrentTaskAdd === 'False' || (isCurrentTaskAdd === 'True' && !questionForm.IsCanEditPosition) || !!answers.SplitOrMergeLesionName))|| (qs.QuestionMark === 8 && (isCurrentTaskAdd === 'False'|| !!answers.SplitOrMergeLesionName)) || (qs.QuestionMark === 10 && (isCurrentTaskAdd === 'False' || (isCurrentTaskAdd === 'True' && !questionForm.IsCanEditPosition) || !!answers.SplitOrMergeLesionName)) || (qs.QuestionMark === 7 && stateDisabled)"
|
||||
@change="((val)=>{formItemChange(val, qs)})"
|
||||
:popper-append-to-body="false"
|
||||
@change="((val)=>{formItemChange(val, qs)})"
|
||||
>
|
||||
<template v-if="qs.QuestionMark === 8" #prefix>
|
||||
<span style="padding-left: 5px;">
|
||||
|
@ -189,43 +189,51 @@
|
|||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
label="SUV测量截图"
|
||||
v-if="answers.OtherPicturePath"
|
||||
>
|
||||
<img v-viewer style="width: 50px; height: 50px; cursor: pointer;" crossorigin="anonymous" :src="answers.OtherPicturePath" alt="Image" class="suv_viewer">
|
||||
</el-form-item>
|
||||
label="SUV测量截图"
|
||||
/>
|
||||
<div>
|
||||
<img
|
||||
v-viewer
|
||||
:options="{ toolbar: false }"
|
||||
style="width: 50px; height: 50px; cursor: pointer;"
|
||||
crossorigin="anonymous"
|
||||
:src="answers.OtherPicturePath"
|
||||
alt="Image"
|
||||
class="suv_viewer"
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
v-if="isCurrentTask && readingTaskState<2"
|
||||
class="base-dialog-footer"
|
||||
style="text-align:right;margin-top:10px;"
|
||||
>
|
||||
|
||||
<div
|
||||
v-if="isCurrentTask && readingTaskState<2"
|
||||
class="base-dialog-footer"
|
||||
style="text-align:right;margin-top:10px;"
|
||||
>
|
||||
|
||||
<!-- 清除标记 -->
|
||||
<el-button
|
||||
v-if="questionForm.MeasureData"
|
||||
size="mini"
|
||||
@click="handleDeleteMeasureData"
|
||||
>
|
||||
{{ $t('trials:reading:button:removeMark') }}
|
||||
</el-button>
|
||||
<!-- 删除 -->
|
||||
<el-button
|
||||
v-if="isCurrentTaskAdd !== 'False'"
|
||||
size="mini"
|
||||
@click="handleDelete"
|
||||
>
|
||||
{{ $t('common:button:delete') }}
|
||||
</el-button>
|
||||
<!-- 保存 -->
|
||||
<el-button
|
||||
size="mini"
|
||||
@click="handleSave"
|
||||
>
|
||||
{{ $t('common:button:save') }}
|
||||
</el-button>
|
||||
<!-- 清除标记 -->
|
||||
<el-button
|
||||
v-if="questionForm.MeasureData"
|
||||
size="mini"
|
||||
@click="handleDeleteMeasureData"
|
||||
>
|
||||
{{ $t('trials:reading:button:removeMark') }}
|
||||
</el-button>
|
||||
<!-- 删除 -->
|
||||
<el-button
|
||||
v-if="isCurrentTaskAdd !== 'False'"
|
||||
size="mini"
|
||||
@click="handleDelete"
|
||||
>
|
||||
{{ $t('common:button:delete') }}
|
||||
</el-button>
|
||||
<!-- 保存 -->
|
||||
<el-button
|
||||
size="mini"
|
||||
@click="handleSave"
|
||||
>
|
||||
{{ $t('common:button:save') }}
|
||||
</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</el-form>
|
||||
</template>
|
||||
|
@ -234,6 +242,7 @@ import { submitTableQuestion, deleteReadingRowAnswer } from '@/api/trials'
|
|||
// import { uploadPrintscreen } from '@/api/reading'
|
||||
import DicomEvent from './../DicomEvent'
|
||||
import store from '@/store'
|
||||
import Viewer from 'v-viewer'
|
||||
export default {
|
||||
name: 'MeasurementForm',
|
||||
props: {
|
||||
|
@ -303,10 +312,11 @@ export default {
|
|||
pictureBaseStr: '',
|
||||
currentMarkTool: '',
|
||||
digitPlaces: 2,
|
||||
stateDisabled: false,
|
||||
stateDisabled: false
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.initializeViewer()
|
||||
this.trialId = this.$route.query.trialId
|
||||
this.initForm()
|
||||
DicomEvent.$on('handleImageQualityAbnormal', () => {
|
||||
|
@ -319,6 +329,11 @@ export default {
|
|||
DicomEvent.$off('handleImageQualityAbnormal')
|
||||
},
|
||||
methods: {
|
||||
initializeViewer() {
|
||||
Viewer.setDefaults({
|
||||
toolbar: { zoomIn: true, zoomOut: true, rotateLeft: true, rotateRight: true, flipHorizontal: true, flipVertical: true }
|
||||
})
|
||||
},
|
||||
async initForm() {
|
||||
const loading = this.$loading({ fullscreen: true })
|
||||
this.questions.forEach(item => {
|
||||
|
|
Loading…
Reference in New Issue