阅片更改

uat
caiyiling 2025-04-10 17:11:47 +08:00
parent 1c19301f28
commit fcc5398bcb
2 changed files with 33 additions and 19 deletions

View File

@ -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

View File

@ -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>