diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2019-09-07 18:48:54 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2019-09-07 18:48:54 +0200 |
commit | 1bc05fe8c33817b7eb16f8fdc49407f23daa9af9 (patch) | |
tree | fb6373f59ae98764019d7ec7ff964d6c60dacd83 /archaeological_warehouse/serializers.py | |
parent | 2308e167713697748a087d415bf9cc2ca29e6e6f (diff) | |
download | Ishtar-1bc05fe8c33817b7eb16f8fdc49407f23daa9af9.tar.bz2 Ishtar-1bc05fe8c33817b7eb16f8fdc49407f23daa9af9.zip |
Serialization: manage documenst (with filters) - refactoring
Diffstat (limited to 'archaeological_warehouse/serializers.py')
-rw-r--r-- | archaeological_warehouse/serializers.py | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/archaeological_warehouse/serializers.py b/archaeological_warehouse/serializers.py index ed5a3f189..904126b32 100644 --- a/archaeological_warehouse/serializers.py +++ b/archaeological_warehouse/serializers.py @@ -1,5 +1,5 @@ from django.db.models import Q -from ishtar_common.serializers import generic_get_results, \ +from ishtar_common.serializers_utils import generic_get_results, \ archive_serialization from archaeological_warehouse import models @@ -58,7 +58,8 @@ def generate_warehouse_queryset(base_query_key, ids): def warehouse_serialization(archive=False, return_empty_types=False, archive_name=None, operation_queryset=None, site_queryset=None, cr_queryset=None, - find_queryset=None, warehouse_queryset=None): + find_queryset=None, warehouse_queryset=None, + get_queryset=False): result_queryset = {} if operation_queryset: operation_ids = operation_queryset.values_list("id", flat=True) @@ -68,7 +69,7 @@ def warehouse_serialization(archive=False, return_empty_types=False, elif site_queryset: site_ids = site_queryset.values_list("id", flat=True) base_query_key = "base_finds__context_record__"\ - "archaeological_site_id__in" + "operation__archaeological_sites__id__in" result_queryset = generate_warehouse_queryset(base_query_key, site_ids) elif cr_queryset: cr_ids = cr_queryset.values_list("id", flat=True) @@ -94,6 +95,8 @@ def warehouse_serialization(archive=False, return_empty_types=False, models.ContainerLocalisation.objects.filter( division__warehouse_id__in=warehouse_ids) } + if get_queryset: + return result_queryset result = generic_get_results(WAREHOUSE_MODEL_LIST, "warehouse", result_queryset=result_queryset) full_archive = archive_serialization( |