阅片页面获取instanceId更改及稽查更改

main
caiyiling 2024-04-23 14:55:40 +08:00
parent 7f04f13d37
commit c7603f4369
2 changed files with 661 additions and 1151 deletions

View File

@ -754,14 +754,10 @@ export default {
getToolStateInfo(e) {
const { element, currentPoints, image, viewport } = e.detail
var imageId = image.imageId
var instanceId = imageId.split('/')[imageId.split('/').length - 1]
var frame = null
if (instanceId.includes('?frame=')) {
frame = instanceId.split('?frame=')[1]
instanceId = instanceId.split('?frame=')[0]
}
const imageInfo = this.getInstanceInfo(imageId)
var instanceId = imageInfo.instanceId
var frame = imageInfo.frame
this.stack.frame = !isNaN(parseInt(frame)) ? parseInt(frame) : 0
instanceId = instanceId.split('.')[0]
const ToolStateManager = cornerstoneTools.globalImageIdSpecificToolStateManager
for (var m = 0; m < this.measuredTools.length; m++) {
var toolType = this.measuredTools[m]
@ -991,15 +987,10 @@ export default {
mouseClick(e) {
const { element, currentPoints, image, viewport } = e.detail
var imageId = image.imageId
var instanceId = imageId.split('/')[imageId.split('/').length - 1]
var frame = null
if (instanceId.includes('?frame=')) {
frame = instanceId.split('?frame=')[1]
instanceId = instanceId.split('?frame=')[0]
}
const imageInfo = this.getInstanceInfo(imageId)
var instanceId = imageInfo.instanceId
var frame = imageInfo.frame
this.stack.frame = !isNaN(parseInt(frame)) ? parseInt(frame) : 0
instanceId = instanceId.split('.')[0]
const ToolStateManager = cornerstoneTools.globalImageIdSpecificToolStateManager
for (let t = 0; t < this.measuredTools.length; t++) {
var toolType = this.measuredTools[t]
@ -1095,14 +1086,10 @@ export default {
this.minVistNum = this.visitTaskList[0].VisitTaskNum
this.measureData = this.visitTaskList[idx].MeasureData
const imageId = this.stack.imageIds[this.stack.currentImageIdIndex]
var instanceId = imageId.split('/')[imageId.split('/').length - 1]
var frame = null
if (instanceId.includes('?frame=')) {
frame = instanceId.split('?frame=')[1]
instanceId = instanceId.split('?frame=')[0]
}
const imageInfo = this.getInstanceInfo(imageId)
var instanceId = imageInfo.instanceId
var frame = imageInfo.frame
this.stack.frame = !isNaN(parseInt(frame)) ? parseInt(frame) : 0
instanceId = instanceId.split('.')[0]
this.stack.instanceId = instanceId
const ToolStateManager = cornerstoneTools.globalImageIdSpecificToolStateManager
ToolStateManager.clearImageIdToolState(dicomSeries.imageIds)
@ -1141,7 +1128,7 @@ export default {
},
onFirstImageLoaded(image) {
console.log('onFirstImageLoaded')
return new Promise(async resolve => {
return new Promise(resolve => {
const element = this.$refs.canvas
var viewport = cornerstone.getDefaultViewportForImage(this.canvas, image)
cornerstone.displayImage(this.canvas, image, viewport)
@ -1208,14 +1195,10 @@ export default {
this.stack.firstImageLoading = false
this.toolState.dicomInfoVisible = true
var instanceId = image.imageId.split('/')[image.imageId.split('/').length - 1]
var frame = null
if (instanceId.includes('?frame=')) {
frame = instanceId.split('?frame=')[1]
instanceId = instanceId.split('?frame=')[0]
}
const imageInfo = this.getInstanceInfo(image.imageId)
var instanceId = imageInfo.instanceId
var frame = imageInfo.frame
this.stack.frame = !isNaN(parseInt(frame)) ? parseInt(frame) : 0
instanceId = instanceId.split('.')[0]
this.stack.instanceId = instanceId
this.height = (this.stack.currentImageIdIndex) * 100 / (this.stack.imageIds.length - 1)
this.resetWwwc()
@ -1281,14 +1264,10 @@ export default {
this.stack.imageRendered = true
// const { element } = e.detail
var imageId = e.detail.image.imageId
var instanceId = imageId.split('/')[imageId.split('/').length - 1]
var frame = null
if (instanceId.includes('?frame=')) {
frame = instanceId.split('?frame=')[1]
instanceId = instanceId.split('?frame=')[0]
}
const imageInfo = this.getInstanceInfo(imageId)
var instanceId = imageInfo.instanceId
var frame = imageInfo.frame
this.stack.frame = !isNaN(parseInt(frame)) ? parseInt(frame) : 0
instanceId = instanceId.split('.')[0]
if (this.imageId !== instanceId) {
this.getOrientationMarker(e.detail.element)
//
@ -1344,14 +1323,10 @@ export default {
this.activeTool = 1
this.activeToolName = ''
var { imageId } = element.image
var instanceId = imageId.split('/')[imageId.split('/').length - 1]
var frame = null
if (instanceId.includes('?frame=')) {
frame = instanceId.split('?frame=')[1]
instanceId = instanceId.split('?frame=')[0]
}
const imageInfo = this.getInstanceInfo(imageId)
var instanceId = imageInfo.instanceId
var frame = imageInfo.frame
this.stack.frame = !isNaN(parseInt(frame)) ? parseInt(frame) : 0
instanceId = instanceId.split('.')[0]
if (e.detail.toolName === 'Length' || e.detail.toolName === 'ArrowAnnotate' || e.detail.toolName === 'RectangleRoi') {
const measureData = {}
measureData.studyId = this.stack.studyId
@ -1468,15 +1443,10 @@ export default {
var element = cornerstone.getEnabledElement(this.canvas)
var viewport = element.viewport
var { imageId } = element.image
var instanceId = imageId.split('/')[imageId.split('/').length - 1]
var frame = null
if (instanceId.includes('?frame=')) {
frame = instanceId.split('?frame=')[1]
instanceId = instanceId.split('?frame=')[0]
}
const imageInfo = this.getInstanceInfo(imageId)
var instanceId = imageInfo.instanceId
var frame = imageInfo.frame
this.stack.frame = !isNaN(parseInt(frame)) ? parseInt(frame) : 0
instanceId = instanceId.split('.')[0]
var uuid = measurementData.uuid
var idx = this.measureData.findIndex(item => item.MeasureData && item.MeasureData.data && item.MeasureData.data.uuid === uuid)
if (idx > -1) {
@ -1533,11 +1503,8 @@ export default {
//
var element = cornerstone.getEnabledElement(this.canvas)
var { imageId } = element.image
var instanceId = imageId.split('/')[imageId.split('/').length - 1]
if (instanceId.includes('?frame=')) {
instanceId = instanceId.split('?frame=')[0]
}
instanceId = instanceId.split('.')[0]
const imageInfo = this.getInstanceInfo(imageId)
var instanceId = imageInfo.instanceId
var idx = this.measureData.findIndex(item => item.InstanceId === instanceId)
var measureData = null
if (idx > -1) {
@ -1962,6 +1929,15 @@ export default {
e.stopImmediatePropagation()
e.stopPropagation()
e.preventDefault()
},
getInstanceInfo(imageId) {
const params = {}
const searchParams = new URLSearchParams(imageId.split('?')[1])
for (const [key, value] of searchParams.entries()) {
params[key] = value
}
return params
}
}