ohif-viewer/Packages/ohif-study-list/client/lib/queryStudies.js
2016-11-15 08:24:01 +01:00

51 lines
1.4 KiB
JavaScript

import { OHIF } from 'meteor/ohif:core';
/**
* Queries requested studies to get their metadata from PACS
* @param studiesToQuery Studies to query
* @param doneCallback Callback to call when the query is done
*/
queryStudies = function(studiesToQuery, doneCallback) {
if (studiesToQuery.length < 1) {
return;
}
var studiesQueried = [];
var numberOfStudiesToQuery = studiesToQuery.length;
OHIF.studylist.progressDialog.show("Querying Studies...", numberOfStudiesToQuery);
studiesToQuery.forEach(function(studyToQuery) {
getStudyMetadata(studyToQuery.studyInstanceUid, function(study) {
studiesQueried.push(study);
var numberOfStudiesQueried = studiesQueried.length;
OHIF.studylist.progressDialog.update(numberOfStudiesQueried);
if (numberOfStudiesQueried === numberOfStudiesToQuery) {
doneCallback(studiesQueried);
}
});
});
};
/**
* Returns the total number of dicom files in a study
* @param study Queried study (includes metadata)
* @returns {number}
*/
getNumberOfFilesInStudy = function(study) {
var numberOFFilesToExport = 0;
study.seriesList.forEach(function(series) {
series.instances.forEach(function(instance) {
if (instance.wadouri) {
numberOFFilesToExport++;
}
});
});
return numberOFFilesToExport;
};