Files
ohif-viewer/Packages/ohif-measurements/client/lib/MeasurementManager.js
T
Erik Ziegler ab4d4c9008 Work on refactoring measurements out of Lesion Tracker package
- Removed AssociatedStudies Collection
- Measurement API is generated from configuration files
- Data exchange methods are defined in configuration
2016-11-15 08:21:46 +01:00

48 lines
1.2 KiB
JavaScript

/**
* Returns new measurement number given a timepointId
* @param timepointId
* @param isTarget
* @returns {*}
*/
function getNewMeasurementNumber(timepointId, Collection, timepointApi) {
// Get all current lesion measurements
const numMeasurements = Collection.find().count();
// If no measurements exist yet, start at 1
if (!numMeasurements) {
return 1;
}
const timepoint = timepointApi.timepoints.findOne({timepointId: timepointId});
const numMeasurementsAtTimepoint = Collection.find({
studyInstanceUid: {
$in: timepoint.studyInstanceUids
}
}).count();
return numMeasurementsAtTimepoint + 1;
}
/**
* If the current Measurements Number already exists
* for any other timepoint, returns lesion locationUID
* @param measurementData
* @returns {*}
*/
function getLocationIdIfMeasurementExists(measurementData, Collection) {
const measurement = Collection.findOne({
measurementNumber: measurementData.measurementNumber
});
if (!measurement) {
return;
}
return measurement.locationId;
}
export const MeasurementManager = {
getNewMeasurementNumber: getNewMeasurementNumber,
getLocationIdIfMeasurementExists: getLocationIdIfMeasurementExists
};