[OHIF-302] fix: Set SeriesNumber for generated SRs to 4700 or above (#1953)

This commit is contained in:
James Petts 2020-08-07 15:57:40 +01:00 committed by GitHub
parent fc71ad0e4f
commit 3267706b33
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 19 additions and 1 deletions

View File

@ -0,0 +1,10 @@
const MIN_SR_SERIES_NUMBER = 4700;
export default function getNextSRSeriesNumber(DisplaySetService) {
const activeDisplaySets = DisplaySetService.getActiveDisplaySets();
const srDisplaySets = activeDisplaySets.filter(ds => ds.Modality === 'SR');
const srSeriesNumbers = srDisplaySets.map(ds => ds.SeriesNumber);
const maxSeriesNumber = Math.max(...srSeriesNumbers, MIN_SR_SERIES_NUMBER);
return maxSeriesNumber + 1;
}

View File

@ -1,9 +1,14 @@
import createReportAsync from './../../_shared/createReportAsync.js';
import createReportDialogPrompt from '../../_shared/createReportDialogPrompt';
import getNextSRSeriesNumber from '../../_shared/getNextSRSeriesNumber';
import RESPONSE from '../../_shared/PROMPT_RESPONSES';
function promptUser({ servicesManager, extensionManager }, ctx, evt) {
const { UIDialogService, MeasurementService } = servicesManager.services;
const {
UIDialogService,
MeasurementService,
DisplaySetService,
} = servicesManager.services;
const viewportIndex =
evt.viewportIndex === undefined
? evt.data.viewportIndex
@ -36,12 +41,15 @@ function promptUser({ servicesManager, extensionManager }, ctx, evt) {
? 'Research Derived Series' // default
: promptResult.value; // provided value
const SeriesNumber = getNextSRSeriesNumber(DisplaySetService);
displaySetInstanceUIDs = await createReportAsync(
servicesManager,
dataSource,
trackedMeasurements,
{
SeriesDescription,
SeriesNumber,
}
);
} else if (promptResult.action === RESPONSE.CANCEL) {