fix: Guard series.instances in DicomJSONDataSource to prevent TypeError (OHI-2114) (#5312)
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Co-authored-by: Alireza <ar.sedghi@gmail.com>
This commit is contained in:
parent
96862d64fc
commit
f1d158bbe8
@ -262,17 +262,19 @@ function createDicomJSONApi(dicomJsonConfig) {
|
||||
|
||||
const { StudyInstanceUID, SeriesInstanceUID } = displaySet;
|
||||
const study = findStudies('StudyInstanceUID', StudyInstanceUID)[0];
|
||||
const series = study.series.find(s => s.SeriesInstanceUID === SeriesInstanceUID) || [];
|
||||
const series = study.series.find(s => s.SeriesInstanceUID === SeriesInstanceUID) || {};
|
||||
|
||||
const instanceMap = new Map();
|
||||
series.instances.forEach(instance => {
|
||||
if (instance?.metadata?.SOPInstanceUID) {
|
||||
const { metadata, url } = instance;
|
||||
const existingInstances = instanceMap.get(metadata.SOPInstanceUID) || [];
|
||||
existingInstances.push({ ...metadata, url });
|
||||
instanceMap.set(metadata.SOPInstanceUID, existingInstances);
|
||||
}
|
||||
});
|
||||
if (series.instances) {
|
||||
series.instances.forEach(instance => {
|
||||
if (instance?.metadata?.SOPInstanceUID) {
|
||||
const { metadata, url } = instance;
|
||||
const existingInstances = instanceMap.get(metadata.SOPInstanceUID) || [];
|
||||
existingInstances.push({ ...metadata, url });
|
||||
instanceMap.set(metadata.SOPInstanceUID, existingInstances);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
displaySet.images.forEach(instance => {
|
||||
const NumberOfFrames = instance.NumberOfFrames || 1;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user