fix(stack-invalidation): Resolve stack invalidation if metadata invalidated (#4147)
This commit is contained in:
parent
d4b09738fb
commit
70bb6c4626
@ -84,12 +84,26 @@ class CornerstoneCacheService {
|
|||||||
invalidatedDisplaySetInstanceUID: string,
|
invalidatedDisplaySetInstanceUID: string,
|
||||||
dataSource,
|
dataSource,
|
||||||
displaySetService
|
displaySetService
|
||||||
) {
|
): Promise<VolumeViewportData | StackViewportData> {
|
||||||
if (viewportData.viewportType === Enums.ViewportType.STACK) {
|
if (viewportData.viewportType === Enums.ViewportType.STACK) {
|
||||||
return this._getCornerstoneStackImageIds(
|
const displaySet = displaySetService.getDisplaySetByUID(invalidatedDisplaySetInstanceUID);
|
||||||
displaySetService.getDisplaySetByUID(invalidatedDisplaySetInstanceUID),
|
const imageIds = this._getCornerstoneStackImageIds(displaySet, dataSource);
|
||||||
dataSource
|
|
||||||
);
|
// remove images from the cache to be able to re-load them
|
||||||
|
imageIds.forEach(imageId => {
|
||||||
|
if (cs3DCache.getImageLoadObject(imageId)) {
|
||||||
|
cs3DCache.removeImageLoadObject(imageId);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
return {
|
||||||
|
viewportType: Enums.ViewportType.STACK,
|
||||||
|
data: {
|
||||||
|
StudyInstanceUID: displaySet.StudyInstanceUID,
|
||||||
|
displaySetInstanceUID: invalidatedDisplaySetInstanceUID,
|
||||||
|
imageIds,
|
||||||
|
},
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
// Todo: grab the volume and get the id from the viewport itself
|
// Todo: grab the volume and get the id from the viewport itself
|
||||||
|
|||||||
@ -17,14 +17,14 @@ export default function getPTImageIdInstanceMetadata(imageId: string): InstanceM
|
|||||||
dicomMetaData.CorrectedImage === undefined ||
|
dicomMetaData.CorrectedImage === undefined ||
|
||||||
dicomMetaData.Units === undefined ||
|
dicomMetaData.Units === undefined ||
|
||||||
!dicomMetaData.RadiopharmaceuticalInformationSequence ||
|
!dicomMetaData.RadiopharmaceuticalInformationSequence ||
|
||||||
dicomMetaData.RadiopharmaceuticalInformationSequence[0].RadionuclideHalfLife === undefined ||
|
dicomMetaData.RadiopharmaceuticalInformationSequence.RadionuclideHalfLife === undefined ||
|
||||||
dicomMetaData.RadiopharmaceuticalInformationSequence[0].RadionuclideTotalDose === undefined ||
|
dicomMetaData.RadiopharmaceuticalInformationSequence.RadionuclideTotalDose === undefined ||
|
||||||
dicomMetaData.DecayCorrection === undefined ||
|
dicomMetaData.DecayCorrection === undefined ||
|
||||||
dicomMetaData.AcquisitionDate === undefined ||
|
dicomMetaData.AcquisitionDate === undefined ||
|
||||||
dicomMetaData.AcquisitionTime === undefined ||
|
dicomMetaData.AcquisitionTime === undefined ||
|
||||||
(dicomMetaData.RadiopharmaceuticalInformationSequence[0].RadiopharmaceuticalStartDateTime ===
|
(dicomMetaData.RadiopharmaceuticalInformationSequence.RadiopharmaceuticalStartDateTime ===
|
||||||
undefined &&
|
undefined &&
|
||||||
dicomMetaData.RadiopharmaceuticalInformationSequence[0].RadiopharmaceuticalStartTime ===
|
dicomMetaData.RadiopharmaceuticalInformationSequence.RadiopharmaceuticalStartTime ===
|
||||||
undefined)
|
undefined)
|
||||||
) {
|
) {
|
||||||
throw new Error('required metadata are missing');
|
throw new Error('required metadata are missing');
|
||||||
@ -37,14 +37,13 @@ export default function getPTImageIdInstanceMetadata(imageId: string): InstanceM
|
|||||||
const instanceMetadata: InstanceMetadata = {
|
const instanceMetadata: InstanceMetadata = {
|
||||||
CorrectedImage: dicomMetaData.CorrectedImage,
|
CorrectedImage: dicomMetaData.CorrectedImage,
|
||||||
Units: dicomMetaData.Units,
|
Units: dicomMetaData.Units,
|
||||||
RadionuclideHalfLife:
|
RadionuclideHalfLife: dicomMetaData.RadiopharmaceuticalInformationSequence.RadionuclideHalfLife,
|
||||||
dicomMetaData.RadiopharmaceuticalInformationSequence[0].RadionuclideHalfLife,
|
|
||||||
RadionuclideTotalDose:
|
RadionuclideTotalDose:
|
||||||
dicomMetaData.RadiopharmaceuticalInformationSequence[0].RadionuclideTotalDose,
|
dicomMetaData.RadiopharmaceuticalInformationSequence.RadionuclideTotalDose,
|
||||||
RadiopharmaceuticalStartDateTime:
|
RadiopharmaceuticalStartDateTime:
|
||||||
dicomMetaData.RadiopharmaceuticalInformationSequence[0].RadiopharmaceuticalStartDateTime,
|
dicomMetaData.RadiopharmaceuticalInformationSequence.RadiopharmaceuticalStartDateTime,
|
||||||
RadiopharmaceuticalStartTime:
|
RadiopharmaceuticalStartTime:
|
||||||
dicomMetaData.RadiopharmaceuticalInformationSequence[0].RadiopharmaceuticalStartTime,
|
dicomMetaData.RadiopharmaceuticalInformationSequence.RadiopharmaceuticalStartTime,
|
||||||
DecayCorrection: dicomMetaData.DecayCorrection,
|
DecayCorrection: dicomMetaData.DecayCorrection,
|
||||||
PatientWeight: dicomMetaData.PatientWeight,
|
PatientWeight: dicomMetaData.PatientWeight,
|
||||||
SeriesDate: dicomMetaData.SeriesDate,
|
SeriesDate: dicomMetaData.SeriesDate,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user