ohif-viewer/Packages/ohif-measurements/client/lib/MeasurementManager.js

50 lines
1.3 KiB
JavaScript

import { OHIF } from 'meteor/ohif:core';
class MeasurementManager {
/**
* Returns new measurement number given a timepointId
*/
static 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 {number} - Measurement location ID
*/
static getLocationIdIfMeasurementExists(measurementData, collection) {
const measurement = collection.findOne({
measurementNumber: measurementData.measurementNumber
});
if (!measurement) {
return;
}
return measurement.locationId;
}
}
OHIF.measurements.MeasurementManager = MeasurementManager;