LT-406: Baseline conformance checks are getting applied at follow-up

This commit is contained in:
Leonardo Campos 2017-02-09 05:16:39 -02:00
parent e8d8608002
commit cdda919d5a
3 changed files with 14 additions and 9 deletions

View File

@ -13,7 +13,7 @@ Template.measurementTableRow.onCreated(() => {
const nonconformitiesByMeasurementNumbers = nonconformitiesByMeasurementTypeId.measurementNumbers || {};
const nonconformitiesByMeasurementNumber = nonconformitiesByMeasurementNumbers[measurementNumber] || {};
return nonconformitiesByMeasurementNumber.messages || [];
return _.uniq(nonconformitiesByMeasurementNumber.messages || []);
};
});

View File

@ -17,7 +17,7 @@ class ConformanceCriteria {
this.maxTargets = new ReactiveVar(null);
const validate = _.debounce(trialCriteriaType => {
if (Session.get('MeasurementsReady')) return;
if (!Session.get('MeasurementsReady')) return;
this.validate(trialCriteriaType);
}, 300);
@ -31,9 +31,14 @@ class ConformanceCriteria {
validate(trialCriteriaType) {
const baselineData = this.getData('baseline');
const followupData = this.getData('followup');
const mergedData = baselineData;
const mergedData = {
targets: [],
nonTargets: []
};
mergedData.targets = mergedData.targets.concat(baselineData.targets);
mergedData.targets = mergedData.targets.concat(followupData.targets);
mergedData.nonTargets = mergedData.nonTargets.concat(baselineData.nonTargets);
mergedData.nonTargets = mergedData.nonTargets.concat(followupData.nonTargets);
this.maxTargets.set(null);
@ -135,9 +140,9 @@ class ConformanceCriteria {
const { studyInstanceUid, imageId } = measurement;
const metadata = this.getImageInstanceMetadata(studyInstanceUid, imageId);
const timepointId = measurement.timepointId;
const timepoint = this.timepointApi.timepoints.findOne({ timepointId });
const timepoint = timepointId && this.timepointApi.timepoints.findOne({ timepointId });
if ((timepointType !== 'both') && (timepoint.timepointType !== timepointType)) {
if (!timepoint || ((timepointType !== 'both') && (timepoint.timepointType !== timepointType))) {
return;
}

View File

@ -1,6 +1,9 @@
{
"both": {
"Location": {},
"Location": {}
},
"baseline": {
"TargetType": {},
"MaxTargetsPerOrgan": {
"limit": 2
},
@ -27,8 +30,5 @@
"message": "Nodal lesions must be >= 15mm short axis AND >= double the acquisition slice thickness by CT and MR"
}]
},
"baseline": {
"TargetType": {}
},
"followup": {}
}