feat(measurements): show untracked measurements in measurement panel under additional findings (#4160)

This commit is contained in:
Ibrahim authored and GitHub committed 2024-05-29 09:12:39 -04:00
1 parent 07eb3c527d
commit 18686c2caf
21 files changed
+181 -176

No files matched your search

@@ -21,9 +21,11 @@ async function promptSaveReport({ servicesManager, commandsManager, extensionMan
const dataSources = extensionManager.getDataSources();
const dataSource = dataSources[0];
const measurements = measurementService.getMeasurements();
const trackedMeasurements = measurements.filter(
m => trackedStudy === m.referenceStudyUID && trackedSeries.includes(m.referenceSeriesUID)
);
const trackedMeasurements = measurements
.filter(
m => trackedStudy === m.referenceStudyUID && trackedSeries.includes(m.referenceSeriesUID)
)
.filter(m => m.referencedImageId != null);
const SeriesDescription =
// isUndefinedOrEmpty
@@ -161,14 +161,18 @@ function PanelMeasurementTableTracking({ servicesManager, extensionManager }: wi
};
const displayMeasurementsWithoutFindings = displayMeasurements.filter(
dm => dm.measurementType !== measurementService.VALUE_TYPES.POINT
dm => dm.measurementType !== measurementService.VALUE_TYPES.POINT && dm.referencedImageId
);
const additionalFindings = displayMeasurements.filter(
dm => dm.measurementType === measurementService.VALUE_TYPES.POINT
dm => dm.measurementType === measurementService.VALUE_TYPES.POINT && dm.referencedImageId
);
const nonAcquisitionMeasurements = displayMeasurements.filter(dm => dm.referencedImageId == null);
const disabled =
additionalFindings.length === 0 && displayMeasurementsWithoutFindings.length === 0;
additionalFindings.length === 0 &&
displayMeasurementsWithoutFindings.length === 0 &&
nonAcquisitionMeasurements.length === 0;
return (
<>
@@ -200,6 +204,15 @@ function PanelMeasurementTableTracking({ servicesManager, extensionManager }: wi
onEdit={onMeasurementItemEditHandler}
/>
)}
{nonAcquisitionMeasurements.length !== 0 && (
<MeasurementTable
title="Non-tracked"
data={nonAcquisitionMeasurements}
servicesManager={servicesManager}
onClick={jumpToImage}
onEdit={onMeasurementItemEditHandler}
/>
)}
</div>
{!appConfig?.disableEditing && (
<div className="flex justify-center p-4">
@@ -207,7 +220,7 @@ function PanelMeasurementTableTracking({ servicesManager, extensionManager }: wi
t={t}
actions={[
{
label: 'Export',
label: 'Download CSV',
onClick: exportReport,
},
{
@@ -266,6 +279,7 @@ function _mapMeasurementToDisplay(measurement, types, displaySetService) {
selected,
findingSites,
finding,
referencedImageId,
} = measurement;
const firstSite = findingSites?.[0];
@@ -294,6 +308,7 @@ function _mapMeasurementToDisplay(measurement, types, displaySetService) {
isActive: selected,
finding,
findingSites,
referencedImageId,
};
}