Moving Hanging Protocols updates back to the viewers

This commit is contained in:
Eloízio Salgado committed 2017-03-02 10:18:11 -03:00
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);
}
}
});