Moving Hanging Protocols updates back to the viewers
This commit is contained in:
1 parent
e10453b919
commit
bec8f21c0a
19 files changed
+1626
-183
No files matched your search
@@ -43,9 +43,9 @@ export class OHIFStudyMetadataSource extends OHIF.viewerbase.StudyMetadataSource
|
||||
return;
|
||||
}
|
||||
|
||||
this.getByInstanceUID(study.getStudyInstanceUID()).then(studyInfo => {
|
||||
this.getByInstanceUID(studyInstanceUID).then(studyInfo => {
|
||||
// Create study metadata object
|
||||
const studyMetadata = new OHIF.metadata.StudyMetadata(studyInfo);
|
||||
const studyMetadata = new OHIF.metadata.StudyMetadata(studyInfo, studyInfo.studyInstanceUid);
|
||||
|
||||
// Get Study display sets
|
||||
const displaySets = OHIF.viewerbase.sortingManager.getDisplaySets(studyMetadata);
|
||||
|
||||
@@ -3,27 +3,30 @@ import 'meteor/ohif:viewerbase';
|
||||
// Local Dependencies
|
||||
import { OHIFStudySummary } from './OHIFStudySummary';
|
||||
|
||||
const StudyMetadata = OHIF.viewerbase.metadata.StudyMetadata;
|
||||
const StudySummary = OHIF.viewerbase.metadata.StudySummary;
|
||||
const PatientID = 'x00100020';
|
||||
const StudyDate = 'x00080020';
|
||||
const { StudyMetadata, StudySummary } = OHIF.viewerbase.metadata;
|
||||
const PATIENT_ID = 'x00100020';
|
||||
const STUDY_DATE = 'x00080020';
|
||||
|
||||
/**
|
||||
* Get the priors of a given study
|
||||
* @param {StudyMetadata|StudySummary} study An instance of StudyMetadata|StudySummary class to get it's priors
|
||||
* @return {Array} An Array of StudySummary objects representing the study priors for the given study or an empty array if none
|
||||
*/
|
||||
const getStudyPriors = study => {
|
||||
|
||||
const priorStudies = [];
|
||||
let patientID;
|
||||
let studyDate;
|
||||
|
||||
if (study instanceof StudyMetadata) {
|
||||
const instance = study.getFirstInstance();
|
||||
patientID = instance.getRawValue(PatientID); // PatientID
|
||||
studyDate = instance.getRawValue(StudyDate); // StudyDate
|
||||
} else if (study instanceof StudySummary) {
|
||||
patientID = study.getTagValue(PatientID); // PatientID
|
||||
studyDate = study.getTagValue(StudyDate); // StudyDate
|
||||
if (!(study instanceof StudyMetadata) && !(study instanceof StudySummary)) {
|
||||
throw new OHIF.viewerbase.OHIFError('getStudyPriors study must be an instance of StudySummary or StudyMetadata');
|
||||
}
|
||||
|
||||
// Find prior studies in global StudyListStudies Minimongo collection...
|
||||
if (study instanceof StudyMetadata) {
|
||||
study = study.getFirstInstance();
|
||||
}
|
||||
|
||||
const priorStudies = [];
|
||||
const patientID = study.getTagValue(PATIENT_ID); // PatientID
|
||||
const studyDate = study.getTagValue(STUDY_DATE); // StudyDate
|
||||
|
||||
// Find prior studies in global StudyListStudies Minimongo collection
|
||||
const cursor = StudyListStudies.find({
|
||||
patientId: patientID,
|
||||
studyDate: {
|
||||
@@ -35,10 +38,9 @@ const getStudyPriors = study => {
|
||||
}
|
||||
});
|
||||
|
||||
// Create an OHIFStudySummary object for each prior study found...
|
||||
// Create an OHIFStudySummary object for each prior study found
|
||||
cursor.forEach(study => {
|
||||
const summary = new OHIFStudySummary();
|
||||
summary.addTags(study);
|
||||
const summary = new OHIFStudySummary(study, null, study.studyInstanceUid);
|
||||
priorStudies.push(summary);
|
||||
});
|
||||
|
||||
|
||||
@@ -3,8 +3,7 @@ import 'meteor/ohif:viewerbase';
|
||||
// Local Dependencies
|
||||
import { getStudyPriors } from './getStudyPriors';
|
||||
|
||||
const StudyMetadata = OHIF.viewerbase.metadata.StudyMetadata;
|
||||
const StudySummary = OHIF.viewerbase.metadata.StudySummary;
|
||||
const { StudyMetadata, StudySummary } = OHIF.viewerbase.metadata;
|
||||
|
||||
/**
|
||||
* Create a Map of study priors where the key of each entry is the StudyInstanceUID and its value is an array of StudySummary instances.
|
||||
@@ -17,10 +16,10 @@ const getStudyPriorsMap = studies => {
|
||||
if (studies instanceof Array) {
|
||||
studies.forEach(study => {
|
||||
if (study instanceof StudyMetadata || study instanceof StudySummary) {
|
||||
const studyInstanceUID = study.getStudyInstanceUID();
|
||||
if (studyInstanceUID) {
|
||||
const studyObjectID = study.getObjectID();
|
||||
if (studyObjectID) {
|
||||
const priors = getStudyPriors(study);
|
||||
priorsMap.set(studyInstanceUID, priors);
|
||||
priorsMap.set(studyObjectID, priors);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
Reference in new issue
Block a user