From 9b10303a2efa809096156d4a2322b2b46f160a91 Mon Sep 17 00:00:00 2001 From: Igor Octaviano Date: Tue, 6 Aug 2024 10:26:34 -0300 Subject: [PATCH] fix(url): series query param filtering (#4328) --- .../default/src/DicomWebDataSource/retrieveStudyMetadata.js | 3 +-- .../src/DicomWebDataSource/utils/retrieveMetadataFiltered.js | 5 ++--- .../default/src/DicomWebDataSource/wado/retrieveMetadata.js | 1 - 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/extensions/default/src/DicomWebDataSource/retrieveStudyMetadata.js b/extensions/default/src/DicomWebDataSource/retrieveStudyMetadata.js index f05115333..9c3c5901f 100644 --- a/extensions/default/src/DicomWebDataSource/retrieveStudyMetadata.js +++ b/extensions/default/src/DicomWebDataSource/retrieveStudyMetadata.js @@ -13,7 +13,6 @@ const StudyMetaDataPromises = new Map(); * @param {boolean} enableStudyLazyLoad Whether the study metadata should be loaded asynchronously. * @param {Object} [filters] Object containing filters to be applied on retrieve metadata process * @param {string} [filters.seriesInstanceUID] Series instance uid to filter results against - * @param {array} [filters.SeriesInstanceUIDs] Series instance uids to filter results against * @param {function} [sortCriteria] Sort criteria function * @param {function} [sortFunction] Sort function * @@ -48,7 +47,7 @@ export function retrieveStudyMetadata( let promise; - if (filters && filters.SeriesInstanceUIDs) { + if (filters && filters.seriesInstanceUID && Array.isArray(filters.seriesInstanceUID)) { promise = retrieveMetadataFiltered( dicomWebClient, StudyInstanceUID, diff --git a/extensions/default/src/DicomWebDataSource/utils/retrieveMetadataFiltered.js b/extensions/default/src/DicomWebDataSource/utils/retrieveMetadataFiltered.js index 3e147fd48..a8ba2b18f 100644 --- a/extensions/default/src/DicomWebDataSource/utils/retrieveMetadataFiltered.js +++ b/extensions/default/src/DicomWebDataSource/utils/retrieveMetadataFiltered.js @@ -8,7 +8,6 @@ import RetrieveMetadata from '../wado/retrieveMetadata'; * @param {*} enableStudyLazyLoad Whether the study metadata should be loaded asynchronously * @param {object} filters Object containing filters to be applied on retrieve metadata process * @param {string} [filters.seriesInstanceUID] Series instance uid to filter results against - * @param {array} [filters.SeriesInstanceUIDs] Series instance uids to filter results against * @param {function} [sortCriteria] Sort criteria function * @param {function} [sortFunction] Sort function * @@ -22,10 +21,10 @@ function retrieveMetadataFiltered( sortCriteria, sortFunction ) { - const { SeriesInstanceUIDs } = filters; + const { seriesInstanceUID } = filters; return new Promise((resolve, reject) => { - const promises = SeriesInstanceUIDs.map(uid => { + const promises = seriesInstanceUID.map(uid => { const seriesSpecificFilters = Object.assign({}, filters, { seriesInstanceUID: uid, }); diff --git a/extensions/default/src/DicomWebDataSource/wado/retrieveMetadata.js b/extensions/default/src/DicomWebDataSource/wado/retrieveMetadata.js index 7bed25a1a..904b9ce85 100644 --- a/extensions/default/src/DicomWebDataSource/wado/retrieveMetadata.js +++ b/extensions/default/src/DicomWebDataSource/wado/retrieveMetadata.js @@ -10,7 +10,6 @@ import RetrieveMetadataLoaderAsync from './retrieveMetadataLoaderAsync'; * @param {*} enableStudyLazyLoad Whether the study metadata should be loaded asynchronously * @param {object} filters Object containing filters to be applied on retrieve metadata process * @param {string} [filters.seriesInstanceUID] Series instance uid to filter results against - * @param {array} [filters.SeriesInstanceUIDs] Series instance uids to filter results against * @param {function} [sortCriteria] Sort criteria function * @param {function} [sortFunction] Sort function *