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