LT-406: Baseline conformance checks are getting applied at follow-up
This commit is contained in:
parent
e8d8608002
commit
cdda919d5a
@ -13,7 +13,7 @@ Template.measurementTableRow.onCreated(() => {
|
||||
const nonconformitiesByMeasurementNumbers = nonconformitiesByMeasurementTypeId.measurementNumbers || {};
|
||||
const nonconformitiesByMeasurementNumber = nonconformitiesByMeasurementNumbers[measurementNumber] || {};
|
||||
|
||||
return nonconformitiesByMeasurementNumber.messages || [];
|
||||
return _.uniq(nonconformitiesByMeasurementNumber.messages || []);
|
||||
};
|
||||
});
|
||||
|
||||
|
||||
@ -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;
|
||||
}
|
||||
|
||||
|
||||
@ -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": {}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user