diff --git a/pretix_poos/urls.py b/pretix_poos/urls.py index 17d03a2..7a6775c 100644 --- a/pretix_poos/urls.py +++ b/pretix_poos/urls.py @@ -6,6 +6,7 @@ from .views import * urlpatterns = [ url(r'^api/v1/organizers/(?P[^/]+)/posdevices/(?P[^/.]+)/closings/', ClosingsView.as_view(), name='api.closings'), + url(r'^api/v1/organizers/(?P[^/]+)/posdevices/(?P[^/.]+)/receipts/', ReceiptsView.as_view(), name='api.receipts'), url(r'^api/v1/organizers/(?P[^/]+)/pos/cashiers/', CashierView.as_view(), name='api.cashiers'), url(r'^api/v1/organizers/(?P[^/]+)/events/(?P[^/.]+)/orders/(?P[^/.]+)/posprintlog/', PosprintlogView.as_view(), name='api.printlog'), ] diff --git a/pretix_poos/views.py b/pretix_poos/views.py index fe2ba5d..a8ba395 100644 --- a/pretix_poos/views.py +++ b/pretix_poos/views.py @@ -1,3 +1,4 @@ +from rest_framework import status from rest_framework.response import Response from rest_framework.views import APIView @@ -10,6 +11,32 @@ class ClosingsView(APIView): 'results': [] }) +class ReceiptsView(APIView): + def post(self, request, organizer, device_id): + return Response({ + "additional_text": request.data.get('additional_text'), + "canceled": request.data.get('canceled'), + "cashier": request.data.get('cashier'), + "closing_id": request.data.get('closing_id'), + "currency": request.data.get('currency'), + "datetime_closed": request.data.get('datetime_closed'), + "datetime_opened": request.data.get('datetime_opened'), + "datetime_uploaded": request.data.get('datetime_closed'), + "device": device_id, + "email_to": request.data.get('email_to'), + "event": request.data.get('event'), + "fiscalisation_data": request.data.get('fiscalisation_data', {}), + "fiscalisation_qr": request.data.get('fiscalisation_qr'), + "fiscalisation_text": request.data.get('fiscalisation_text'), + "lines": request.data.get('lines', []), + "order": request.data.get('order'), + "payment_data": request.data.get('payment_data', {}), + "payment_type": request.data.get('payment_type'), + "payments": request.data.get('payments', []), + "receipt_id": request.data.get('receipt_id'), + "training": request.data.get('training') + }, status=status.HTTP_201_CREATED) + class CashierView(APIView): def get(self, request, organizer): return Response({