Delete the lesion on image and from Measurements collection if del or ctrl+d(for mac) keys are pressed after a lesion is selected
This commit is contained in:
1 parent
462820f0aa
commit
c27f80c8b8
3 files changed
+148
-1
No files matched your search
@@ -4,6 +4,59 @@ Meteor.methods({
|
||||
Measurements.remove(
|
||||
{patientId: patientId}
|
||||
);
|
||||
},
|
||||
|
||||
"removePatientMeasurement": function(lesionObject) {
|
||||
|
||||
// Find patient data
|
||||
var measurementData = Measurements.findOne(
|
||||
{
|
||||
patientId: lesionObject.patientId,
|
||||
isTarget: lesionObject.isTarget,
|
||||
lesionNumber: lesionObject.lesionNumber
|
||||
}
|
||||
);
|
||||
|
||||
// Get timepoints
|
||||
var timepoints = measurementData.timepoints;
|
||||
|
||||
// Create an array to hold keys of timepoints
|
||||
var timepointsIds = Object.keys(timepoints).slice(0);
|
||||
|
||||
timepointsIds.forEach(function(timepointId){
|
||||
if(timepointId === lesionObject.timepointId) {
|
||||
delete timepoints[timepointId];
|
||||
}
|
||||
});
|
||||
|
||||
var newTimepointsIds = Object.keys(timepoints);
|
||||
// If there is no timepoints object, remove measurement data
|
||||
if(newTimepointsIds.length) {
|
||||
//Update measurement timepoints
|
||||
Measurements.update(
|
||||
{
|
||||
patientId: lesionObject.patientId,
|
||||
isTarget: lesionObject.isTarget,
|
||||
lesionNumber: lesionObject.lesionNumber
|
||||
},
|
||||
{
|
||||
$set: {
|
||||
timepoints: timepoints
|
||||
}
|
||||
}
|
||||
);
|
||||
}else {
|
||||
// Remove all data
|
||||
Measurements.remove(
|
||||
{
|
||||
patientId: lesionObject.patientId,
|
||||
isTarget: lesionObject.isTarget,
|
||||
lesionNumber: lesionObject.lesionNumber
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
Reference in new issue
Block a user