From 8734def5272678ad4dd2426962e1ef358a4488a2 Mon Sep 17 00:00:00 2001 From: behruz-dev Date: Sat, 6 Sep 2025 16:29:39 +0500 Subject: [PATCH] add order delete api --- core/apps/admin_panel/urls.py | 1 + core/apps/admin_panel/views/order.py | 13 ++++++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/core/apps/admin_panel/urls.py b/core/apps/admin_panel/urls.py index f6928a8..2370f82 100644 --- a/core/apps/admin_panel/urls.py +++ b/core/apps/admin_panel/urls.py @@ -58,6 +58,7 @@ urlpatterns = [ path('order/', include( [ path('list/', order_views.OrderListApiView.as_view()), + path('/delete/', order_views.OrderDeleteApiView.as_view()), ] )), path('dashboard/', include( diff --git a/core/apps/admin_panel/views/order.py b/core/apps/admin_panel/views/order.py index 316c854..e36ab48 100644 --- a/core/apps/admin_panel/views/order.py +++ b/core/apps/admin_panel/views/order.py @@ -1,3 +1,5 @@ +from django.shortcuts import get_object_or_404 + from rest_framework import generics, views, status from rest_framework.permissions import IsAdminUser @@ -15,4 +17,13 @@ class OrderListApiView(generics.GenericAPIView): page = self.paginate_queryset(self.queryset) if page is not None: serializer = self.serializer_class(page, many=True) - return self.get_paginated_response(serializer.data) \ No newline at end of file + return self.get_paginated_response(serializer.data) + + +class OrderDeleteApiView(views.APIView, ResponseMixin): + permission_classes = [IsAdminUser] + + def delete(self, request, id): + order = get_object_or_404(Order, id=id) + order.delete() + return self.success_response(status_code=status.HTTP_204_NO_CONTENT) \ No newline at end of file