fix: Display series specified by URL query parameters in viewer (#3000)

* Changed the static wado filter to allow filtering for series before start make requests of the entire metadata

* fixed first filter to use studyFilterKeys

Co-authored-by: Thomas Forster <thomasforster@ip-192-168-68-104.eu-west-2.compute.internal>
This commit is contained in:
TFRadicalImaging 2022-11-01 19:25:49 -03:00 committed by GitHub
parent 2507a4b546
commit 6698300ace
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -42,7 +42,16 @@ export default class StaticWadoClient extends api.DICOMwebClient {
if (!queryParams) return searchResult;
const filtered = searchResult.filter(study => {
for (const key of Object.keys(StaticWadoClient.studyFilterKeys)) {
if (!this.filterItem(key, queryParams, study)) return false;
if (
!this.filterItem(
key,
queryParams,
study,
StaticWadoClient.studyFilterKeys
)
) {
return false;
}
}
return true;
});
@ -56,8 +65,17 @@ export default class StaticWadoClient extends api.DICOMwebClient {
const { queryParams } = options;
if (!queryParams) return searchResult;
const filtered = searchResult.filter(study => {
for (const key of Object.keys(StaticWadoClient.studyFilterKeys)) {
if (!this.filterItem(key, queryParams, study)) return false;
for (const key of Object.keys(StaticWadoClient.seriesFilterKeys)) {
if (
!this.filterItem(
key,
queryParams,
study,
StaticWadoClient.seriesFilterKeys
)
) {
return false;
}
}
return true;
});
@ -121,10 +139,11 @@ export default class StaticWadoClient extends api.DICOMwebClient {
* @param {*} key
* @param {*} queryParams
* @param {*} study
* @param {*} sourceFilterMap
* @returns
*/
filterItem(key, queryParams, study) {
const altKey = StaticWadoClient.studyFilterKeys[key] || key;
filterItem(key, queryParams, study, sourceFilterMap) {
const altKey = sourceFilterMap[key] || key;
if (!queryParams) return true;
const testValue = queryParams[key] || queryParams[altKey];
if (!testValue) return true;