diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2025-10-14 18:07:32 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2025-10-15 19:34:46 +0200 |
commit | 08a3f83a4c00a5f7698225b2980fd184da9819e6 (patch) | |
tree | 04588dcfc69c8eb7a49cf2cc5dbd9441201e81d1 /ishtar_common/views_api.py | |
parent | 6f5c46f73606fd4afb957f73c355bc61a3f7f393 (diff) | |
download | Ishtar-08a3f83a4c00a5f7698225b2980fd184da9819e6.tar.bz2 Ishtar-08a3f83a4c00a5f7698225b2980fd184da9819e6.zip |
✨ GIS API: manage delayed imports - send error messages from imports
Diffstat (limited to 'ishtar_common/views_api.py')
-rw-r--r-- | ishtar_common/views_api.py | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/ishtar_common/views_api.py b/ishtar_common/views_api.py index 93dcdf901..e0226811b 100644 --- a/ishtar_common/views_api.py +++ b/ishtar_common/views_api.py @@ -19,6 +19,7 @@ from django.apps import apps from django.http import Http404 +from django.utils.translation import gettext_lazy as _ import html from urllib.parse import unquote_plus @@ -152,9 +153,16 @@ class GISImportAPI(GISBaseImportView, GISAPIView): if serializer.is_valid(): chunk = serializer.save() new_import = chunk.associate_chunks() + msg = "" + if new_import and new_import.import_immediatly: + if not new_import.pre_import_form_is_valid: + msg = _("Import not started - Pre import form need to be completed") + elif new_import.need_matching(): + msg = _("Import not started - Value matches must be made") chunk_slug = f"{importer_slug}-{data['send_datetime']}-{data['number']}" - return Response( - {"chunk": chunk_slug, "import": new_import.id if new_import else None}, - status=status.HTTP_201_CREATED - ) + return Response({ + "chunk": chunk_slug, + "import": new_import.id if new_import else None, + "message": msg + }, status=status.HTTP_201_CREATED) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) |