summaryrefslogtreecommitdiff
path: root/ishtar_common/views_api.py
diff options
context:
space:
mode:
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
commit08a3f83a4c00a5f7698225b2980fd184da9819e6 (patch)
tree04588dcfc69c8eb7a49cf2cc5dbd9441201e81d1 /ishtar_common/views_api.py
parent6f5c46f73606fd4afb957f73c355bc61a3f7f393 (diff)
downloadIshtar-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.py16
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)