# HG changeset patch # User Sebastien Jodogne # Date 1715252571 -7200 # Node ID 1e92fb051fd798aa474e86370fbd534ba9469dab # Parent a10978a5e65c554ffb76c9c5a14e6d415b5894e0 fix diff -r a10978a5e65c -r 1e92fb051fd7 OrthancServer/Sources/Database/Compatibility/GenericFind.cpp --- a/OrthancServer/Sources/Database/Compatibility/GenericFind.cpp Thu May 09 12:24:29 2024 +0200 +++ b/OrthancServer/Sources/Database/Compatibility/GenericFind.cpp Thu May 09 13:02:51 2024 +0200 @@ -59,6 +59,7 @@ } } else if (IsRequestWithoutContraint(request) && + request.GetLevel() == ResourceType_Patient && request.GetOrthancIdentifiers().HasPatientId() && !request.GetOrthancIdentifiers().HasStudyId() && !request.GetOrthancIdentifiers().HasSeriesId() && @@ -67,6 +68,7 @@ identifiers.push_back(request.GetOrthancIdentifiers().GetPatientId()); } else if (IsRequestWithoutContraint(request) && + request.GetLevel() == ResourceType_Study && !request.GetOrthancIdentifiers().HasPatientId() && request.GetOrthancIdentifiers().HasStudyId() && !request.GetOrthancIdentifiers().HasSeriesId() && @@ -75,6 +77,7 @@ identifiers.push_back(request.GetOrthancIdentifiers().GetStudyId()); } else if (IsRequestWithoutContraint(request) && + request.GetLevel() == ResourceType_Series && !request.GetOrthancIdentifiers().HasPatientId() && !request.GetOrthancIdentifiers().HasStudyId() && request.GetOrthancIdentifiers().HasSeriesId() && @@ -83,6 +86,7 @@ identifiers.push_back(request.GetOrthancIdentifiers().GetSeriesId()); } else if (IsRequestWithoutContraint(request) && + request.GetLevel() == ResourceType_Instance && !request.GetOrthancIdentifiers().HasPatientId() && !request.GetOrthancIdentifiers().HasStudyId() && !request.GetOrthancIdentifiers().HasSeriesId() && diff -r a10978a5e65c -r 1e92fb051fd7 OrthancServer/Sources/ResourceFinder.cpp --- a/OrthancServer/Sources/ResourceFinder.cpp Thu May 09 12:24:29 2024 +0200 +++ b/OrthancServer/Sources/ResourceFinder.cpp Thu May 09 13:02:51 2024 +0200 @@ -546,6 +546,9 @@ LOG(INFO) << "Will retrieve missing DICOM tags from instance: " << instancePublicId; + // TODO-FIND: What do we do if the DICOM has been removed since the request? + // Do we fail, or do we skip the resource? + Json::Value tmpDicomAsJson; context.ReadDicomAsJson(tmpDicomAsJson, instancePublicId, missingTags /* ignoreTagLength */);