阅片更改
parent
1c19301f28
commit
fcc5398bcb
|
@ -487,10 +487,10 @@ const newStyles = {
|
||||||
textBoxLinkLineWidth: '1',
|
textBoxLinkLineWidth: '1',
|
||||||
textBoxLinkLineDash: '2,3',
|
textBoxLinkLineDash: '2,3',
|
||||||
textBoxShadow: true,
|
textBoxShadow: true,
|
||||||
markerSize: '10',
|
markerSize: '10'
|
||||||
},
|
}
|
||||||
}
|
}
|
||||||
annotation.config.style.setDefaultToolStyles(newStyles);
|
annotation.config.style.setDefaultToolStyles(newStyles)
|
||||||
const { MouseBindings, Events: toolsEvents } = csToolsEnums
|
const { MouseBindings, Events: toolsEvents } = csToolsEnums
|
||||||
export default {
|
export default {
|
||||||
name: 'ReadPage',
|
name: 'ReadPage',
|
||||||
|
@ -563,7 +563,8 @@ export default {
|
||||||
isClinicalDataFullscreen: false,
|
isClinicalDataFullscreen: false,
|
||||||
cdVisitTaskId: '',
|
cdVisitTaskId: '',
|
||||||
lastViewportTaskId: '',
|
lastViewportTaskId: '',
|
||||||
digitPlaces: 2
|
digitPlaces: 2,
|
||||||
|
instanceInfo: {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
|
@ -717,8 +718,8 @@ export default {
|
||||||
const res1 = await getReadingVisitStudyList(this.trialId, sujectVisitId, taskId)
|
const res1 = await getReadingVisitStudyList(this.trialId, sujectVisitId, taskId)
|
||||||
let keyStudyIndex = -1
|
let keyStudyIndex = -1
|
||||||
let keySeriesIndex = -1
|
let keySeriesIndex = -1
|
||||||
const arr = res1.Result.filter(i => !i.IsCriticalSequence)
|
// const arr = res1.Result.filter(i => !i.IsCriticalSequence)
|
||||||
// const arr = res1.Result
|
const arr = res1.Result
|
||||||
arr.forEach((study, studyIndex) => {
|
arr.forEach((study, studyIndex) => {
|
||||||
study.SeriesList.forEach((series, seriesIndex) => {
|
study.SeriesList.forEach((series, seriesIndex) => {
|
||||||
const imageIds = []
|
const imageIds = []
|
||||||
|
@ -736,13 +737,14 @@ export default {
|
||||||
const nFrames = instance.NumberOfFrames || 0
|
const nFrames = instance.NumberOfFrames || 0
|
||||||
if (nFrames === 0) {
|
if (nFrames === 0) {
|
||||||
// 单帧
|
// 单帧
|
||||||
imageIds.push(`wadouri:${this.OSSclientConfig.basePath}${instance.Path}?frame=0&instanceId=${instance.Id}&visitTaskId=${taskId}&idx=${taskIndex}|${studyIndex}|${seriesIndex}`)
|
imageIds.push(`wadouri:${this.OSSclientConfig.basePath}${instance.Path}?frame=0&instanceId=${instance.Id}&visitTaskId=${taskId}`)
|
||||||
} else {
|
} else {
|
||||||
// 多帧
|
// 多帧
|
||||||
for (let frameIndex = 0; frameIndex < nFrames; frameIndex++) {
|
for (let frameIndex = 0; frameIndex < nFrames; frameIndex++) {
|
||||||
imageIds.push(`wadouri:${this.OSSclientConfig.basePath}${instance.Path}?frame=${frameIndex}&instanceId=${instance.Id}&visitTaskId=${taskId}&idx=${taskIndex}|${studyIndex}|${seriesIndex}`)
|
imageIds.push(`wadouri:${this.OSSclientConfig.basePath}${instance.Path}?frame=${frameIndex}&instanceId=${instance.Id}&visitTaskId=${taskId}`)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
this.instanceInfo[instance.Id] = { taskIndex, studyIndex, seriesIndex }
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
series.ImageIds = imageIds
|
series.ImageIds = imageIds
|
||||||
|
@ -759,10 +761,10 @@ export default {
|
||||||
keyImages.forEach(instance => {
|
keyImages.forEach(instance => {
|
||||||
if (instance.KeyFramesList.length > 0) {
|
if (instance.KeyFramesList.length > 0) {
|
||||||
instance.KeyFramesList.map(i => {
|
instance.KeyFramesList.map(i => {
|
||||||
keyImageIds.push(`wadouri:${this.OSSclientConfig.basePath}${instance.Path}?frame=${i}&instanceId=${instance.Id}&visitTaskId=${taskId}&idx=${taskIndex}|${instance.StudyIndex}|${instance.SeriesIndex}`)
|
keyImageIds.push(`wadouri:${this.OSSclientConfig.basePath}${instance.Path}?frame=${i}&instanceId=${instance.Id}&visitTaskId=${taskId}`)
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
keyImageIds.push(`wadouri:${this.OSSclientConfig.basePath}${instance.Path}?frame=0&instanceId=${instance.Id}&visitTaskId=${taskId}&idx=${taskIndex}|${instance.StudyIndex}|${instance.SeriesIndex}`)
|
keyImageIds.push(`wadouri:${this.OSSclientConfig.basePath}${instance.Path}?frame=0&instanceId=${instance.Id}&visitTaskId=${taskId}`)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
res1.Result[keyStudyIndex].SeriesList[keySeriesIndex].ImageIds = keyImageIds
|
res1.Result[keyStudyIndex].SeriesList[keySeriesIndex].ImageIds = keyImageIds
|
||||||
|
@ -777,7 +779,6 @@ export default {
|
||||||
}
|
}
|
||||||
return i
|
return i
|
||||||
})
|
})
|
||||||
console.log(res1.Result)
|
|
||||||
return { studyList: arr, annotations: annotations, annotationUIDs, keyImages }
|
return { studyList: arr, annotations: annotations, annotationUIDs, keyImages }
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.log(e)
|
console.log(e)
|
||||||
|
@ -977,12 +978,15 @@ export default {
|
||||||
const percentComplete = detail.percentComplete
|
const percentComplete = detail.percentComplete
|
||||||
const imageId = detail.imageId
|
const imageId = detail.imageId
|
||||||
const params = this.getInstanceInfo(imageId)
|
const params = this.getInstanceInfo(imageId)
|
||||||
if (!params.hasOwnProperty('idx')) return
|
const instanceId = params.instanceId
|
||||||
const indexArr = params.idx.split('|')
|
const idxObj = this.instanceInfo[instanceId]
|
||||||
if (indexArr.length < 3) return
|
if (!(idxObj && typeof idxObj === 'object')) return
|
||||||
const taskIndex = parseInt(indexArr[0])
|
// if (!params.hasOwnProperty('idx')) return
|
||||||
const studyIndex = parseInt(indexArr[1])
|
// const indexArr = params.idx.split('|')
|
||||||
const seriesIndex = parseInt(indexArr[2])
|
// if (indexArr.length < 3) return
|
||||||
|
const taskIndex = idxObj.taskIndex
|
||||||
|
const studyIndex = idxObj.studyIndex
|
||||||
|
const seriesIndex = idxObj.seriesIndex
|
||||||
const isCriticalSequence = this.visitTaskList[taskIndex].StudyList[studyIndex].IsCriticalSequence
|
const isCriticalSequence = this.visitTaskList[taskIndex].StudyList[studyIndex].IsCriticalSequence
|
||||||
const keyImages = this.visitTaskList[taskIndex].KeyImages
|
const keyImages = this.visitTaskList[taskIndex].KeyImages
|
||||||
const series = this.visitTaskList[taskIndex].StudyList[studyIndex].SeriesList[seriesIndex]
|
const series = this.visitTaskList[taskIndex].StudyList[studyIndex].SeriesList[seriesIndex]
|
||||||
|
@ -1061,6 +1065,13 @@ export default {
|
||||||
toolsEvents.ANNOTATION_REMOVED,
|
toolsEvents.ANNOTATION_REMOVED,
|
||||||
this.annotationRemovedListener
|
this.annotationRemovedListener
|
||||||
)
|
)
|
||||||
|
eventTarget.addEventListener(
|
||||||
|
toolsEvents.ANNOTATION_ADDED,
|
||||||
|
this.annotationAddedListener
|
||||||
|
)
|
||||||
|
},
|
||||||
|
annotationAddedListener(e) {
|
||||||
|
console.log('annotationAddedListener', e)
|
||||||
},
|
},
|
||||||
annotationCompletedListener(e) {
|
annotationCompletedListener(e) {
|
||||||
console.log('Completed')
|
console.log('Completed')
|
||||||
|
@ -1689,6 +1700,7 @@ export default {
|
||||||
this.sLoading = false
|
this.sLoading = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
this.setToolsPassive()
|
||||||
},
|
},
|
||||||
async toggleTaskByViewport(obj) {
|
async toggleTaskByViewport(obj) {
|
||||||
const i = this.visitTaskList.findIndex(v => v.VisitTaskNum === obj.visitTaskNum)
|
const i = this.visitTaskList.findIndex(v => v.VisitTaskNum === obj.visitTaskNum)
|
||||||
|
@ -1725,6 +1737,7 @@ export default {
|
||||||
this.currentVisitInfo = series.TaskInfo
|
this.currentVisitInfo = series.TaskInfo
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
this.setToolsPassive()
|
||||||
},
|
},
|
||||||
async activeSeries(obj) {
|
async activeSeries(obj) {
|
||||||
this.$refs[`viewport-${this.activeViewportIndex}`][0].setSeriesInfo(obj)
|
this.$refs[`viewport-${this.activeViewportIndex}`][0].setSeriesInfo(obj)
|
||||||
|
@ -1734,6 +1747,7 @@ export default {
|
||||||
this.lastViewportTaskId = obj.TaskInfo.VisitTaskId
|
this.lastViewportTaskId = obj.TaskInfo.VisitTaskId
|
||||||
this.currentVisitInfo = obj.TaskInfo
|
this.currentVisitInfo = obj.TaskInfo
|
||||||
}
|
}
|
||||||
|
this.setToolsPassive()
|
||||||
},
|
},
|
||||||
// 激活视口
|
// 激活视口
|
||||||
activeViewport(index) {
|
activeViewport(index) {
|
||||||
|
@ -1851,7 +1865,7 @@ export default {
|
||||||
}
|
}
|
||||||
const imageIds = seriesList[seriesIdx].ImageIds
|
const imageIds = seriesList[seriesIdx].ImageIds
|
||||||
const imageIdIdx = imageIds.findIndex(is => is.includes(filterStr))
|
const imageIdIdx = imageIds.findIndex(is => is.includes(filterStr))
|
||||||
if (imageIdIdx) {
|
if (imageIdIdx > -1) {
|
||||||
obj = Object.assign({}, seriesList[seriesIdx])
|
obj = Object.assign({}, seriesList[seriesIdx])
|
||||||
obj.SliceIndex = imageIdIdx
|
obj.SliceIndex = imageIdIdx
|
||||||
obj.IsMarked = true
|
obj.IsMarked = true
|
||||||
|
|
|
@ -80,7 +80,7 @@
|
||||||
</span>
|
</span>
|
||||||
<span v-show="series.LoadedImageCount >= series.InstanceCount">{{ series.Modality }}: {{ series.InstanceCount }} image</span>
|
<span v-show="series.LoadedImageCount >= series.InstanceCount">{{ series.Modality }}: {{ series.InstanceCount }} image</span>
|
||||||
</div>
|
</div>
|
||||||
<div v-show="annotations.findIndex(v=>v.seriesId === series.Id && v.MeasureData) > -1">
|
<div v-show="series.IsBeMark">
|
||||||
<i class="el-icon-star-on" style="font-size: 16px;color: #ff5722;" />
|
<i class="el-icon-star-on" style="font-size: 16px;color: #ff5722;" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
Loading…
Reference in New Issue