changeset 659:c42b1c7eed9e

merge
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 05 Jun 2024 11:26:11 +0200
parents 1ce39017d4fd (current diff) ac8541d5ffd2 (diff)
children 311835d686d9
files Plugin/QidoRs.cpp
diffstat 2 files changed, 6 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/NEWS	Wed Jun 05 11:25:43 2024 +0200
+++ b/NEWS	Wed Jun 05 11:26:11 2024 +0200
@@ -6,6 +6,8 @@
 
 * WADO-RS retrieve frame: fix issue 219 (https://orthanc.uclouvain.be/bugs/show_bug.cgi?id=219)
   by converting BigEndianExplicitVR to LittleEndianExplicitVR.
+* QIDO-RS: now returning sequences that are listed in includefield
+  https://discourse.orthanc-server.org/t/qido-includefield-with-sequences/4746
 * The plugin now uses the new logging primitives from Orthanc 1.12.4
 
 
--- a/Plugin/QidoRs.cpp	Wed Jun 05 11:25:43 2024 +0200
+++ b/Plugin/QidoRs.cpp	Wed Jun 05 11:26:11 2024 +0200
@@ -356,10 +356,10 @@
       for (std::set<Orthanc::DicomTag>::const_iterator
              it = fields.begin(); it != fields.end(); ++it)
       {
-        std::string value;
-        if (source.LookupStringValue(value, *it, false /* no binary */))
+        if (source.HasTag(*it))
         {
-          result.SetValue(*it, value, false);
+          const Orthanc::DicomValue& val = source.GetValue(*it);
+          result.SetValue(*it, val);
         }
       }
 
@@ -418,7 +418,7 @@
     Orthanc::DicomMap source;
     if (resource["RequestedTags"].isObject())
     {
-      source.FromDicomAsJson(resource["RequestedTags"]);
+      source.FromDicomAsJson(resource["RequestedTags"], false, true);
     }
 
     Orthanc::DicomMap target;