From c0eeb17482669a7f48bcdb481f65d23eedcfe068 Mon Sep 17 00:00:00 2001 From: Ross Date: Tue, 2 Mar 2021 20:32:08 +0000 Subject: [PATCH] . --- longs/models.py | 7 ++----- longs/templates/longs/long_series_viewer.html | 1 + longs/urls.py | 1 + longs/views.py | 10 ++++++++++ 4 files changed, 14 insertions(+), 5 deletions(-) diff --git a/longs/models.py b/longs/models.py index 2a9b87e4..15314175 100644 --- a/longs/models.py +++ b/longs/models.py @@ -189,6 +189,7 @@ class Long(models.Model): #"feedback_image": [], #"annotations": [str(q.image_annotations)], "type": "long", + "cached": False, } return exam_question @@ -377,14 +378,10 @@ class LongSeries(models.Model): else: skipcount = skipcount + 1 - print("skipped, no SliceLocation: {}".format(skipcount)) + print("skipped, no {}: {}".format(field, skipcount)) # ensure they are in the correct order slices = sorted(slices, key=lambda s: s[field].value) - #if field == "SliceLocation": - # slices = sorted(slices, key=lambda s: s.SliceLocation) - #elif field == "InstanceNumber": - # slices = sorted(slices, key=lambda s: s.InstanceNumber) #print(slices) diff --git a/longs/templates/longs/long_series_viewer.html b/longs/templates/longs/long_series_viewer.html index 425599a9..9617b76f 100755 --- a/longs/templates/longs/long_series_viewer.html +++ b/longs/templates/longs/long_series_viewer.html @@ -17,6 +17,7 @@ This series is not associated with any cases.
Order dicoms by slice location Order dicoms by instance number +Order dicoms by SeriesInstanceUID Order by uploaded filename
{% for image in series.images.all %} diff --git a/longs/urls.py b/longs/urls.py index 3ed91a4e..f331d6ce 100755 --- a/longs/urls.py +++ b/longs/urls.py @@ -13,6 +13,7 @@ urlpatterns = [ path("series/", views.long_series_detail, name="long_series_detail"), path("series//order_dicom", views.long_series_order_dicom, name="long_series_order_dicom"), path("series//order_dicom_instance", views.long_series_order_dicom_instance, name="long_series_order_dicom_instance"), + path("series//order_dicom_SeriesInstanceUID", views.long_series_order_dicom_SeriesInstanceUID, name="long_series_order_dicom_SeriesInstanceUID"), path("series//order_upload_filename", views.long_series_order_upload_filename, name="long_series_order_upload_filename"), path("series//delete", views.LongSeriesDelete.as_view(), name="long_series_delete"), # path("unchecked/", views.unchecked_list, name="unchecked_list"), diff --git a/longs/views.py b/longs/views.py index af23849d..87ce32ea 100755 --- a/longs/views.py +++ b/longs/views.py @@ -955,6 +955,16 @@ def long_series_order_dicom_instance(request, pk): return redirect("longs:long_series_detail", pk=pk) +@login_required +def long_series_order_dicom_SeriesInstanceUID(request, pk): + series = get_object_or_404(LongSeries, pk=pk) + try: + series.order_by_dicom("SeriesInstanceUID") + except: + return HttpResponse('

Series does not appear to contain dicoms (or field SeriesInstanceUID)

') + + return redirect("longs:long_series_detail", pk=pk) + @login_required def long_series_order_upload_filename(request, pk): series = get_object_or_404(LongSeries, pk=pk)