From 349306da4013602141fecefd095d95e8dc538c30 Mon Sep 17 00:00:00 2001 From: taliabeckie <147656147+taliabeckie@users.noreply.github.com> Date: Fri, 9 May 2025 06:19:20 -0600 Subject: [PATCH] fix(DicomWebProxyDataSource): bug fix to save Segmentation files back to Kheops (#5028) --- extensions/cornerstone-dicom-seg/src/commandsModule.ts | 7 ++++++- extensions/default/src/DicomWebProxyDataSource/index.ts | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/extensions/cornerstone-dicom-seg/src/commandsModule.ts b/extensions/cornerstone-dicom-seg/src/commandsModule.ts index 36e5cf045..cde160b19 100644 --- a/extensions/cornerstone-dicom-seg/src/commandsModule.ts +++ b/extensions/cornerstone-dicom-seg/src/commandsModule.ts @@ -220,7 +220,7 @@ const commandsModule = ({ } const { label } = segmentation; - const defaultDataSource = dataSource ?? extensionManager.getActiveDataSource(); + const defaultDataSource = dataSource ?? extensionManager.getActiveDataSource()[0]; const { value: reportName, @@ -251,6 +251,11 @@ const commandsModule = ({ const { dataset: naturalizedReport } = generatedData; + // DCMJS assigns a dummy study id during creation, and this can cause problems, so clearing it out + if (naturalizedReport.StudyID === 'No Study ID') { + naturalizedReport.StudyID = ''; + } + await selectedDataSourceConfig.store.dicom(naturalizedReport); // add the information for where we stored it to the instance as well diff --git a/extensions/default/src/DicomWebProxyDataSource/index.ts b/extensions/default/src/DicomWebProxyDataSource/index.ts index 8ab25f9ff..8c83899aa 100644 --- a/extensions/default/src/DicomWebProxyDataSource/index.ts +++ b/extensions/default/src/DicomWebProxyDataSource/index.ts @@ -52,7 +52,7 @@ function createDicomWebProxyApi(dicomWebProxyConfig, servicesManager: AppTypes.S }, }, store: { - dicom: (...args) => dicomWebDelegate.store(...args), + dicom: (...args) => dicomWebDelegate.store.dicom(...args), }, deleteStudyMetadataPromise: (...args) => dicomWebDelegate.deleteStudyMetadataPromise(...args), getImageIdsForDisplaySet: (...args) => dicomWebDelegate.getImageIdsForDisplaySet(...args),