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-24 18:35:22 +0200
commit91a3df4ddd70e395174cd9d1699bfe61f443cb81 (patch)
treec146c9180a6a4df04554756d9c8738d776413bea /ishtar_common/views_api.py
parent41f648b73cc9aa4322a6d82d68e3e1fde9d4a85e (diff)
downloadIshtar-91a3df4ddd70e395174cd9d1699bfe61f443cb81.tar.bz2
Ishtar-91a3df4ddd70e395174cd9d1699bfe61f443cb81.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)