6 Commits

Author SHA1 Message Date
caiyiling a66e15eb39 MRI-PDFF测量逻辑更改
continuous-integration/drone/push Build encountered an error
2025-06-04 16:25:48 +08:00
caiyiling 895e3a6bed MRI-PDFF更改
continuous-integration/drone/push Build encountered an error
2025-06-04 13:35:42 +08:00
caiyiling 9dddc0c012 MRI-PDFF测量逻辑更改
continuous-integration/drone/push Build encountered an error
2025-06-04 10:53:45 +08:00
caiyiling a965f08a1e MRI-PDFF标准更改
continuous-integration/drone/push Build encountered an error
2025-06-04 09:24:41 +08:00
caiyiling 9962b1a829 反色bug修复
continuous-integration/drone/push Build encountered an error
2025-05-28 18:46:53 +08:00
caiyiling 049128b90e 添加阅片完成支持添加临时标注(历史标注不允许更改)功能及阅片页面双击放大缺陷修复
continuous-integration/drone/push Build encountered an error
2025-05-28 15:44:38 +08:00
5 changed files with 118 additions and 43 deletions
@@ -263,7 +263,7 @@ export default {
series: '', series: '',
ToolStateManager: null, ToolStateManager: null,
renderedMeasured: [], renderedMeasured: [],
measuredTools: ['Length', 'Bidirectional', 'ArrowAnnotate', 'RectangleRoi'], measuredTools: ['Length', 'Bidirectional', 'ArrowAnnotate', 'RectangleRoi', 'Probe'],
measureData: [], measureData: [],
selectedLesion: null, selectedLesion: null,
activeTool: 0, // 0:enable 1:passive 2:active activeTool: 0, // 0:enable 1:passive 2:active
@@ -303,8 +303,8 @@ export default {
], ],
scrollSyncInfo: { offset: 0 }, scrollSyncInfo: { offset: 0 },
hideMeasureArr: [] hideMeasureArr: [],
isInitWwwc: true
} }
}, },
computed: { computed: {
@@ -565,7 +565,6 @@ export default {
e.stopPropagation() e.stopPropagation()
e.preventDefault() e.preventDefault()
} else if (this.activeToolName === 'Length' || this.activeToolName === 'Bidirectional' && this.readingTaskState < 2) { } else if (this.activeToolName === 'Length' || this.activeToolName === 'Bidirectional' && this.readingTaskState < 2) {
console.log(e.detail.image)
if (!e.detail.image.columnPixelSpacing || !e.detail.image.rowPixelSpacing) { if (!e.detail.image.columnPixelSpacing || !e.detail.image.rowPixelSpacing) {
// '该影像不具备测量长度所需的必要数据,不能进行长度测量。请选择其他工具进行标注。' // '该影像不具备测量长度所需的必要数据,不能进行长度测量。请选择其他工具进行标注。'
this.$confirm(this.$t('trials:reading:warnning:msg56'), '', { this.$confirm(this.$t('trials:reading:warnning:msg56'), '', {
@@ -578,6 +577,13 @@ export default {
e.stopPropagation() e.stopPropagation()
e.preventDefault() e.preventDefault()
} }
} else if (this.CriterionType === 21 && this.activeToolName === 'Probe' && this.readingTaskState < 2) {
if (!(e.detail.image.imageFrame.photometricInterpretation === 'MONOCHROME1' || e.detail.image.imageFrame.photometricInterpretation === 'MONOCHROME2')) {
this.$alert(this.$t('trials:MRIPDFF:message:message5'))
e.stopImmediatePropagation()
e.stopPropagation()
e.preventDefault()
}
} }
}, },
pointNearTool(e) { pointNearTool(e) {
@@ -607,7 +613,11 @@ export default {
if ((i.LesionType === 0 || i.LesionType === 1 || i.LesionType === 7) && i.IsFirstChangeTask) { if ((i.LesionType === 0 || i.LesionType === 1 || i.LesionType === 7) && i.IsFirstChangeTask) {
arr.push(i.OrderMarkName) arr.push(i.OrderMarkName)
} }
if (i.Id && this.readingTaskState >= 2) {
arr.push(i.OrderMarkName)
}
}) })
console.log(arr)
return arr return arr
}, },
getMergeMarks(measureDatas) { getMergeMarks(measureDatas) {
@@ -616,6 +626,9 @@ export default {
if ((i.LesionType === 0) && i.SplitOrMergeType === 1) { if ((i.LesionType === 0) && i.SplitOrMergeType === 1) {
arr.push(i.OrderMarkName) arr.push(i.OrderMarkName)
} }
if (i.Id && this.readingTaskState >= 2) {
arr.push(i.OrderMarkName)
}
}) })
return arr return arr
}, },
@@ -661,7 +674,7 @@ export default {
}, },
sliderMousemove(e) { sliderMousemove(e) {
if (!this.sliderInfo.isMove) return if (!this.sliderInfo.isMove) return
console.log('sliderMousemove') // console.log('sliderMousemove')
var PX = this.sliderInfo.oldB - (this.sliderInfo.oldM - e.clientY) var PX = this.sliderInfo.oldB - (this.sliderInfo.oldM - e.clientY)
var boxHeight = this.$refs['sliderBox'].clientHeight var boxHeight = this.$refs['sliderBox'].clientHeight
if (PX < 0) return if (PX < 0) return
@@ -692,7 +705,7 @@ export default {
} else if (criterionType === 2) { } else if (criterionType === 2) {
this.disabledMarks = this.getMergeMarks(this.visitTaskList[idx].MeasureData) this.disabledMarks = this.getMergeMarks(this.visitTaskList[idx].MeasureData)
} else { } else {
this.disabledMarks = [] this.disabledMarks = this.getDisabledMarks(this.visitTaskList[idx].MeasureData)
} }
return true return true
}, },
@@ -785,6 +798,8 @@ export default {
} else if (toolType === 'Length') { } else if (toolType === 'Length') {
// toolState.data[i].length = this.calculateLenth(toolState.data[i]) // toolState.data[i].length = this.calculateLenth(toolState.data[i])
} }
measureData.largestPixelValue = image.imageFrame.largestPixelValue
measureData.imageId = imageId
measureData.studyId = this.stack.studyId measureData.studyId = this.stack.studyId
measureData.seriesId = this.stack.seriesId measureData.seriesId = this.stack.seriesId
measureData.instanceId = instanceId measureData.instanceId = instanceId
@@ -901,6 +916,9 @@ export default {
} }
} else if (this.activeTool === 1 && this.readingTaskState < 2) { } else if (this.activeTool === 1 && this.readingTaskState < 2) {
cornerstoneTools.setToolPassiveForElement(element, data.MeasureData.type, { mouseButtonMask: 1 }) cornerstoneTools.setToolPassiveForElement(element, data.MeasureData.type, { mouseButtonMask: 1 })
} else if (this.readingTaskState >= 2 && this.isCurrentTask) {
// setToolPassiveForElement
cornerstoneTools.setToolEnabledForElement(element, data.MeasureData.type, { mouseButtonMask: 1 })
} else { } else {
cornerstoneTools.setToolEnabledForElement(element, data.MeasureData.type, { mouseButtonMask: 1 }) cornerstoneTools.setToolEnabledForElement(element, data.MeasureData.type, { mouseButtonMask: 1 })
} }
@@ -919,6 +937,9 @@ export default {
} }
} }
}) })
if (this.readingTaskState >= 2 && this.activeToolName && this.isCurrentTask) {
cornerstoneTools.setToolActiveForElement(element, this.activeToolName, { mouseButtonMask: 1 })
}
}, },
setMeasureDataVisible() { setMeasureDataVisible() {
if (this.readingTaskState >= 2) return if (this.readingTaskState >= 2) return
@@ -986,6 +1007,7 @@ export default {
} }
}, },
mouseClick(e) { mouseClick(e) {
if (this.readingTaskState >= 2) return
const { element, currentPoints, image, viewport } = e.detail const { element, currentPoints, image, viewport } = e.detail
var imageId = image.imageId var imageId = image.imageId
const imageInfo = this.getInstanceInfo(imageId) const imageInfo = this.getInstanceInfo(imageId)
@@ -1010,6 +1032,8 @@ export default {
var questionInfo = this.measureData[idx] var questionInfo = this.measureData[idx]
// const canvas = this.canvas.querySelector('canvas') // const canvas = this.canvas.querySelector('canvas')
// measureData.pictureBaseStr = canvas.toDataURL('image/png', 1) // measureData.pictureBaseStr = canvas.toDataURL('image/png', 1)
measureData.largestPixelValue = image.imageFrame.largestPixelValue
measureData.imageId = imageId
measureData.studyId = this.stack.studyId measureData.studyId = this.stack.studyId
measureData.seriesId = this.stack.seriesId measureData.seriesId = this.stack.seriesId
measureData.instanceId = instanceId measureData.instanceId = instanceId
@@ -1035,6 +1059,7 @@ export default {
}, },
loadImageStack(dicomSeries) { loadImageStack(dicomSeries) {
return new Promise(resolve => { return new Promise(resolve => {
this.isInitWwwc = true
this.isCurrentTask = dicomSeries.isCurrentTask this.isCurrentTask = dicomSeries.isCurrentTask
this.isBaseline = dicomSeries.isBaseLineTask this.isBaseline = dicomSeries.isBaseLineTask
this.readingTaskState = dicomSeries.readingTaskState this.readingTaskState = dicomSeries.readingTaskState
@@ -1073,7 +1098,8 @@ export default {
} else if (criterionType === 2) { } else if (criterionType === 2) {
this.disabledMarks = this.getMergeMarks(this.visitTaskList[idx].MeasureData) this.disabledMarks = this.getMergeMarks(this.visitTaskList[idx].MeasureData)
} else { } else {
this.disabledMarks = [] // this.disabledMarks = []
this.disabledMarks = this.getDisabledMarks(this.visitTaskList[idx].MeasureData)
} }
this.maxVistNum = this.visitTaskList[this.visitTaskList.length - 1].VisitTaskNum this.maxVistNum = this.visitTaskList[this.visitTaskList.length - 1].VisitTaskNum
@@ -1202,7 +1228,7 @@ export default {
this.stack.frame = this.stack.isExistMutiFrames ? parseInt(frame) : null this.stack.frame = this.stack.isExistMutiFrames ? parseInt(frame) : null
this.stack.instanceId = instanceId this.stack.instanceId = instanceId
this.height = (this.stack.currentImageIdIndex) * 100 / (this.stack.imageIds.length - 1) this.height = (this.stack.currentImageIdIndex) * 100 / (this.stack.imageIds.length - 1)
// this.resetWwwc()
resolve() resolve()
}) })
}, },
@@ -1300,6 +1326,9 @@ export default {
this.scrollSyncInfo.offset = 0 this.scrollSyncInfo.offset = 0
} }
this.renderMeasuredData(e) this.renderMeasuredData(e)
if (this.isInitWwwc) {
this.resetWwwc()
}
}, },
getOrientationMarker(element) { getOrientationMarker(element) {
const enabledElement = cornerstone.getEnabledElement(element) const enabledElement = cornerstone.getEnabledElement(element)
@@ -1336,6 +1365,8 @@ export default {
this.stack.frame = this.stack.isExistMutiFrames ? parseInt(frame) : null this.stack.frame = this.stack.isExistMutiFrames ? parseInt(frame) : null
if (e.detail.toolName === 'Length' || e.detail.toolName === 'ArrowAnnotate' || e.detail.toolName === 'RectangleRoi') { if (e.detail.toolName === 'Length' || e.detail.toolName === 'ArrowAnnotate' || e.detail.toolName === 'RectangleRoi') {
const measureData = {} const measureData = {}
measureData.largestPixelValue = element.image.imageFrame.largestPixelValue
measureData.imageId = imageId
measureData.studyId = this.stack.studyId measureData.studyId = this.stack.studyId
measureData.seriesId = this.stack.seriesId measureData.seriesId = this.stack.seriesId
measureData.instanceId = instanceId measureData.instanceId = instanceId
@@ -1353,6 +1384,8 @@ export default {
cornerstoneTools.setToolPassiveForElement(this.canvas, e.detail.toolName) cornerstoneTools.setToolPassiveForElement(this.canvas, e.detail.toolName)
} else if (e.detail.toolName === 'Bidirectional') { } else if (e.detail.toolName === 'Bidirectional') {
const measureData = {} const measureData = {}
measureData.largestPixelValue = element.image.imageFrame.largestPixelValue
measureData.imageId = imageId
measureData.studyId = this.stack.studyId measureData.studyId = this.stack.studyId
measureData.seriesId = this.stack.seriesId measureData.seriesId = this.stack.seriesId
measureData.instanceId = instanceId measureData.instanceId = instanceId
@@ -1369,6 +1402,8 @@ export default {
cornerstoneTools.setToolPassiveForElement(this.canvas, e.detail.toolName) cornerstoneTools.setToolPassiveForElement(this.canvas, e.detail.toolName)
} else if (e.detail.toolName === 'Probe') { } else if (e.detail.toolName === 'Probe') {
const measureData = {} const measureData = {}
measureData.largestPixelValue = element.image.imageFrame.largestPixelValue
measureData.imageId = imageId
measureData.studyId = this.stack.studyId measureData.studyId = this.stack.studyId
measureData.seriesId = this.stack.seriesId measureData.seriesId = this.stack.seriesId
measureData.instanceId = instanceId measureData.instanceId = instanceId
@@ -1478,6 +1513,8 @@ export default {
var questionInfo = this.measureData[idx] var questionInfo = this.measureData[idx]
// const canvas = this.canvas.querySelector('canvas') // const canvas = this.canvas.querySelector('canvas')
// measureData.pictureBaseStr = canvas.toDataURL('image/png', 1) // measureData.pictureBaseStr = canvas.toDataURL('image/png', 1)
measureData.largestPixelValue = element.image.imageFrame.largestPixelValue
measureData.imageId = imageId
measureData.studyId = this.stack.studyId measureData.studyId = this.stack.studyId
measureData.seriesId = this.stack.seriesId measureData.seriesId = this.stack.seriesId
measureData.instanceId = instanceId measureData.instanceId = instanceId
@@ -1669,6 +1706,8 @@ export default {
}, },
resetWwwc() { resetWwwc() {
// console.log('resetWwwc')
this.isInitWwwc = true
this.toolState.viewportInvert = false this.toolState.viewportInvert = false
var viewport = cornerstone.getViewport(this.canvas) var viewport = cornerstone.getViewport(this.canvas)
// viewport.invert = false // viewport.invert = false
@@ -1679,7 +1718,7 @@ export default {
}, },
setWwwc(ww, wc) { setWwwc(ww, wc) {
// console.log('setWwwc', ww, wc) this.isInitWwwc = false
var viewport = cornerstone.getViewport(this.canvas) var viewport = cornerstone.getViewport(this.canvas)
viewport.voi.windowWidth = ww viewport.voi.windowWidth = ww
viewport.voi.windowCenter = wc viewport.voi.windowCenter = wc
@@ -416,7 +416,7 @@
<dicom-canvas <dicom-canvas
v-if="canvasW" v-if="canvasW"
:ref="`dicomCanvas${i-1}`" :ref="`dicomCanvas${i-1}`"
:style="{width:canvasW,height: canvasH}" :style="{width: fullScreenIndex === i-1 ? fullScreenWidth : canvasW,height: fullScreenIndex === i-1 ? fullScreenHeight : canvasH}"
:canvas-index="i-1" :canvas-index="i-1"
:is-active="i-1===currentDicomCanvasIndex" :is-active="i-1===currentDicomCanvasIndex"
:is-scroll-sync="isScrollSync" :is-scroll-sync="isScrollSync"
@@ -989,7 +989,10 @@ export default {
signVisible: false, signVisible: false,
signCode: null, signCode: null,
currentUser: zzSessionStorage.getItem('userName'), currentUser: zzSessionStorage.getItem('userName'),
tmpData: null tmpData: null,
fullScreenIndex: -1,
fullScreenWidth: window.innerWidth - 570 + 'px',
fullScreenHeight: window.innerHeight - 130 + 'px'
} }
}, },
@@ -1379,22 +1382,25 @@ export default {
this.personalConfigDialog.visible = true this.personalConfigDialog.visible = true
}, },
setCornerstoneStyle(i) { setCornerstoneStyle(i) {
if (this.layoutCol === 1 && this.layoutRow === 1) {
this.fullScreenIndex = -1
return
}
if (this.cornerstoneStyle.position) { if (this.cornerstoneStyle.position) {
this.cornerstoneStyle = {} this.cornerstoneStyle = {}
this.setCanvasStyle() this.setCanvasStyle()
this.fullScreenIndex = -1
} else { } else {
this.cornerstoneStyle = { this.cornerstoneStyle = {
position: 'absolute', position: 'absolute',
top: '72px', top: '67px',
left: '0px', left: '0px',
right: '350px', right: '350px',
zIndex: 10 zIndex: 10,
} }
this.canvasW = window.innerWidth - 570 + 'px' this.fullScreenIndex = this.currentDicomCanvasIndex
this.canvasH = window.innerHeight - 130 + 'px'
} }
this.$nextTick(() => { this.$nextTick(() => {
// this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].reloadCanvas()
for (var i = 0; i < this.maxCanvas; i++) { for (var i = 0; i < this.maxCanvas; i++) {
this.$refs[`dicomCanvas${i}`][0].reloadCanvas() this.$refs[`dicomCanvas${i}`][0].reloadCanvas()
} }
@@ -1941,6 +1947,7 @@ export default {
}, },
// 切换布局 // 切换布局
changeLayout(name) { changeLayout(name) {
this.fullScreenIndex = -1
if (this.activeTool) { if (this.activeTool) {
if (this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].isCurrentTask && this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].readingTaskState < 2) { if (this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].isCurrentTask && this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].readingTaskState < 2) {
this.$nextTick(() => { this.$nextTick(() => {
@@ -2043,14 +2050,17 @@ export default {
if (i === -1) return if (i === -1) return
var isCurrentTask = this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].isCurrentTask var isCurrentTask = this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].isCurrentTask
var readingTaskState = this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].readingTaskState var readingTaskState = this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].readingTaskState
if (!isCurrentTask || readingTaskState >= 2) { if (!isCurrentTask) {
this.measuredTools[i].isDisabled = true this.measuredTools[i].isDisabled = true
e.target.style.cursor = 'not-allowed' e.target.style.cursor = 'not-allowed'
if (this.activeTool) { if (this.activeTool) {
this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].setToolEnabled(toolName) this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].setToolEnabled(toolName)
this.activeTool = '' this.activeTool = ''
} }
} else { } else if (isCurrentTask && readingTaskState >= 2) {
this.measuredTools[i].isDisabled = false
e.target.style.cursor = 'pointer'
} else if (isCurrentTask && readingTaskState < 2) {
// var obj = this.$refs['measurementList'].isCanActiveTool(toolName, true) // var obj = this.$refs['measurementList'].isCanActiveTool(toolName, true)
var obj = this.$refs['measurementList'].isCanActiveTool(toolName, true) var obj = this.$refs['measurementList'].isCanActiveTool(toolName, true)
this.measuredTools[i].disabledReason = obj.reason this.measuredTools[i].disabledReason = obj.reason
@@ -2087,7 +2097,7 @@ export default {
var toolObj = this.measuredTools.find(i => i.toolName === toolName) var toolObj = this.measuredTools.find(i => i.toolName === toolName)
if (!toolObj || toolObj.isDisabled) return if (!toolObj || toolObj.isDisabled) return
var dicomSeries = this.canvasObj[this.currentDicomCanvasIndex] var dicomSeries = this.canvasObj[this.currentDicomCanvasIndex]
if (dicomSeries.isCurrentTask && isMeasuredTool && dicomSeries.readingTaskState < 2) { if (dicomSeries.isCurrentTask && isMeasuredTool) {
if (this.activeTool) { if (this.activeTool) {
this.measuredTools.forEach(item => { this.measuredTools.forEach(item => {
this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].setToolPassive(item.toolName) this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].setToolPassive(item.toolName)
@@ -2248,13 +2258,14 @@ export default {
this.customWwc.visible = false this.customWwc.visible = false
}, },
toggleInvert() { toggleInvert() {
if (this.activeTool === 'reversecolor') { // if (this.activeTool === 'reversecolor') {
this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].resetWwwc() // this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].resetWwwc()
this.activeTool = '' // this.activeTool = ''
} else { // } else {
this.activeTool = 'reversecolor' // this.activeTool = 'reversecolor'
this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].toggleInvert() // this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].toggleInvert()
} // }
this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].toggleInvert()
}, },
setImageIndexSync() { setImageIndexSync() {
this.isScrollSync = !this.isScrollSync this.isScrollSync = !this.isScrollSync
@@ -205,6 +205,7 @@
import { saveTableQuestionMark, submitTaskRowInfo, deleteTableQuestionMark, deleteSingleTableQuestionMark } from '@/api/reading' import { saveTableQuestionMark, submitTaskRowInfo, deleteTableQuestionMark, deleteSingleTableQuestionMark } from '@/api/reading'
import DicomEvent from './../DicomEvent' import DicomEvent from './../DicomEvent'
import store from '@/store' import store from '@/store'
import * as cornerstone from 'cornerstone-core'
export default { export default {
name: 'MeasurementForm', name: 'MeasurementForm',
props: { props: {
@@ -444,7 +445,12 @@ export default {
// 维护标记信息 // 维护标记信息
measureData.data.remark = this.getLesionName(this.orderMark, this.activeQuestionMark) measureData.data.remark = this.getLesionName(this.orderMark, this.activeQuestionMark)
} }
const val = measureData.data.cachedStats.mean / 10 // const val = measureData.data.cachedStats.mean / 10
let val = parseFloat(measureData.data.cachedStats.mean)
// let imagePixelModule = cornerstone.metaData.get('imagePixelModule', measureData.imageId)
if (measureData.largestPixelValue >= 500) {
val = val / 10
}
this.$set(this.questionForm, measureData.tableQuestionId, val.toFixed(this.digitPlaces)) this.$set(this.questionForm, measureData.tableQuestionId, val.toFixed(this.digitPlaces))
data = { data = {
Id: '', Id: '',
@@ -574,14 +580,26 @@ export default {
let params = {} let params = {}
if (i > -1 && this.markList[i].measureData && this.markList[i].measureData.MeasureData) { if (i > -1 && this.markList[i].measureData && this.markList[i].measureData.MeasureData) {
const measureData = this.markList[i].measureData.MeasureData const measureData = this.markList[i].measureData.MeasureData
const tableQuestionId = this.markList[i].tableQuestionId
if (this.questionForm[tableQuestionId] > 100) {
const confirm = await this.$confirm(
this.$t('trials:MRIPDFF:message:message4'),
{
type: 'warning',
distinguishCancelAndClose: true
}
)
if (confirm !== 'confirm') return
}
// 上传截图 // 上传截图
DicomEvent.$emit('getScreenshots', { questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex, visitTaskId: this.visitTaskId, lesionName: measureData.OrderMarkName, lesionType: null, isMarked: !!measureData }, async val => { DicomEvent.$emit('getScreenshots', { questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex, visitTaskId: this.visitTaskId, lesionName: measureData.OrderMarkName, lesionType: null, isMarked: !!measureData }, async val => {
params = Object.assign({}, this.markList[i].measureData) params = Object.assign({}, this.markList[i].measureData)
if (val) { if (val) {
const pictureObj = await this.uploadScreenshots(`${new Date().getTime()}`, val) const pictureObj = await this.uploadScreenshots(`${new Date().getTime()}`, val)
params.PicturePath = pictureObj.isSuccess ? this.$getObjectName(pictureObj.result.url) : '' params.PicturePath = pictureObj.isSuccess ? this.$getObjectName(pictureObj.result.url) : ''
} }
const tableQuestionId = this.markList[i].tableQuestionId
params.Answer = this.questionForm[tableQuestionId] params.Answer = this.questionForm[tableQuestionId]
params.MeasureData = JSON.stringify(this.markList[i].measureData.MeasureData) params.MeasureData = JSON.stringify(this.markList[i].measureData.MeasureData)
loading.close() loading.close()
@@ -264,7 +264,6 @@ export default {
if (item.Type === 'table' && item.Id === obj.questionId) { if (item.Type === 'table' && item.Id === obj.questionId) {
var idx = item.TableQuestions.Answers.findIndex(i => i.RowIndex === obj.rowIndex) var idx = item.TableQuestions.Answers.findIndex(i => i.RowIndex === obj.rowIndex)
item.TableQuestions.Answers[idx].isMeasurable = obj.isMeasurable item.TableQuestions.Answers[idx].isMeasurable = obj.isMeasurable
console.log(obj.isMeasurable)
item.TableQuestions.Answers[idx].mean = obj.mean item.TableQuestions.Answers[idx].mean = obj.mean
item.TableQuestions.Answers[idx].saveTypeEnum = obj.saveTypeEnum item.TableQuestions.Answers[idx].saveTypeEnum = obj.saveTypeEnum
@@ -556,7 +556,7 @@
<dicom-canvas <dicom-canvas
v-if="canvasW" v-if="canvasW"
:ref="`dicomCanvas${i - 1}`" :ref="`dicomCanvas${i - 1}`"
:style="{ width: canvasW, height: canvasH }" :style="{width: fullScreenIndex === i-1 ? fullScreenWidth : canvasW,height: fullScreenIndex === i-1 ? fullScreenHeight : canvasH}"
:canvas-index="i - 1" :canvas-index="i - 1"
:is-active="i - 1 === currentDicomCanvasIndex" :is-active="i - 1 === currentDicomCanvasIndex"
:is-scroll-sync="isScrollSync" :is-scroll-sync="isScrollSync"
@@ -895,6 +895,9 @@ export default {
uploadTrialCriterion: {}, uploadTrialCriterion: {},
uploadStatus: 'upload', uploadStatus: 'upload',
taskId: '', taskId: '',
fullScreenIndex: -1,
fullScreenWidth: window.innerWidth - 570 + 'px',
fullScreenHeight: window.innerHeight - 128 + 'px'
} }
}, },
@@ -1314,22 +1317,25 @@ export default {
this.personalConfigDialog.visible = true this.personalConfigDialog.visible = true
}, },
setCornerstoneStyle(i) { setCornerstoneStyle(i) {
if (this.layoutCol === 1 && this.layoutRow === 1) {
this.fullScreenIndex = -1
return
}
if (this.cornerstoneStyle.position) { if (this.cornerstoneStyle.position) {
this.cornerstoneStyle = {} this.cornerstoneStyle = {}
this.setCanvasStyle() this.setCanvasStyle()
this.fullScreenIndex = -1
} else { } else {
this.cornerstoneStyle = { this.cornerstoneStyle = {
position: 'absolute', position: 'absolute',
top: '72px', top: '70px',
left: '205px', left: '205px',
right: '350px', right: '350px',
zIndex: 10, zIndex: 10,
} }
this.canvasW = window.innerWidth - 570 + 'px' this.fullScreenIndex = this.currentDicomCanvasIndex
this.canvasH = window.innerHeight - 130 + 'px'
} }
this.$nextTick(() => { this.$nextTick(() => {
// this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].reloadCanvas()
for (var i = 0; i < this.maxCanvas; i++) { for (var i = 0; i < this.maxCanvas; i++) {
this.$refs[`dicomCanvas${i}`][0].reloadCanvas() this.$refs[`dicomCanvas${i}`][0].reloadCanvas()
} }
@@ -1928,6 +1934,7 @@ export default {
}, },
// 切换布局 // 切换布局
changeLayout(name) { changeLayout(name) {
this.fullScreenIndex = -1
if (this.activeTool) { if (this.activeTool) {
if ( if (
this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0] this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0]
@@ -2301,15 +2308,16 @@ export default {
this.customWwc.visible = false this.customWwc.visible = false
}, },
toggleInvert() { toggleInvert() {
if (this.activeTool === 'reversecolor') { // if (this.activeTool === 'reversecolor') {
this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].resetWwwc() // this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].resetWwwc()
this.activeTool = '' // this.activeTool = ''
} else { // } else {
this.activeTool = 'reversecolor' // this.activeTool = 'reversecolor'
this.$refs[ // this.$refs[
`dicomCanvas${this.currentDicomCanvasIndex}` // `dicomCanvas${this.currentDicomCanvasIndex}`
][0].toggleInvert() // ][0].toggleInvert()
} // }
this.$refs[`dicomCanvas${this.currentDicomCanvasIndex}`][0].toggleInvert()
}, },
setImageIndexSync() { setImageIndexSync() {
this.isScrollSync = !this.isScrollSync this.isScrollSync = !this.isScrollSync