add: add three new apis for delete
This commit is contained in:
@@ -15,6 +15,7 @@ urlpatterns = [
|
||||
path("<uuid:order_id>/accept/", order_views.OrderChangeStatusAcceptedApiView.as_view()),
|
||||
path("accepted/list/", order_views.OrderAcceptApiView.as_view()),
|
||||
path('<uuid:order_id>/offers/', order_views.OrderOfferListApiView.as_view()),
|
||||
path('bulk-delete/', order_views.DeleteMultipleOrderApiView.as_view()),
|
||||
]
|
||||
)),
|
||||
path('offer/', include(
|
||||
@@ -23,6 +24,7 @@ urlpatterns = [
|
||||
path('list/', offer_views.OfferListApiView.as_view()),
|
||||
path('<uuid:id>/delete/', offer_views.OfferDeleteApiView.as_view()),
|
||||
path('<uuid:id>/update/', offer_views.OfferUpdateApiView.as_view()),
|
||||
path('bulk-delete/', offer_views.DeleteMultipleOfferApiView.as_view()),
|
||||
]
|
||||
)),
|
||||
path('party/', include(
|
||||
@@ -39,6 +41,7 @@ urlpatterns = [
|
||||
path('<uuid:party_id>/is_made/', party_views.PartyChangeStatusToIsMadeApiView.as_view()),
|
||||
path('pay/', party_views.PartyPaymentApiView.as_view()),
|
||||
path('statistics/', party_views.PartyStatisticsApiView.as_view()),
|
||||
path('bulk-delete/', party_views.DeleteMultiplePartyApiView.as_view()),
|
||||
]
|
||||
)),
|
||||
]
|
||||
@@ -88,4 +88,16 @@ class OfferDeleteApiView(views.APIView):
|
||||
def delete(self, request, id):
|
||||
offer = get_object_or_404(Offer, id=id)
|
||||
offer.delete()
|
||||
return Response({'success': True}, status=204)
|
||||
return Response({'success': True}, status=204)
|
||||
|
||||
|
||||
class DeleteMultipleOfferApiView(views.APIView):
|
||||
permission_classes = [HasRolePermission]
|
||||
|
||||
def delete(self, request):
|
||||
ids = request.data.get("offer_ids", [])
|
||||
if not ids:
|
||||
return Response({"detail": "offer_ids kerak"}, status=400)
|
||||
|
||||
deleted_count, _ = Offer.objects.filter(id__in=ids).delete()
|
||||
return Response({"deleted": deleted_count}, status=200)
|
||||
@@ -99,4 +99,16 @@ class OrderOfferListApiView(generics.GenericAPIView):
|
||||
def get(self, request, order_id):
|
||||
offers = self.get_queryset().select_related("order").filter(order_id=order_id)
|
||||
serializer = self.serializer_class(offers, many=True)
|
||||
return Response(serializer.data, status=200)
|
||||
return Response(serializer.data, status=200)
|
||||
|
||||
|
||||
class DeleteMultipleOrderApiView(views.APIView):
|
||||
permission_classes = [HasRolePermission]
|
||||
|
||||
def delete(self, request):
|
||||
ids = request.data.get("order_ids", [])
|
||||
if not ids:
|
||||
return Response({"detail": "order_ids kerak"}, status=status.HTTP_400_BAD_REQUEST)
|
||||
|
||||
deleted_count, _ = Order.objects.filter(id__in=ids).delete()
|
||||
return Response({"deleted": deleted_count}, status=status.HTTP_200_OK)
|
||||
@@ -224,4 +224,16 @@ class PartyStatisticsApiView(generics.GenericAPIView):
|
||||
'usd': usd,
|
||||
'uzs': uzs
|
||||
}
|
||||
return Response(res, status=200)
|
||||
return Response(res, status=200)
|
||||
|
||||
|
||||
class DeleteMultiplePartyApiView(views.APIView):
|
||||
permission_classes = [HasRolePermission]
|
||||
|
||||
def delete(self, request):
|
||||
ids = request.data.get("party_ids", [])
|
||||
if not ids:
|
||||
return Response({"detail": "party_ids kerak"}, status=400)
|
||||
|
||||
deleted_count, _ = Party.objects.filter(id__in=ids).delete()
|
||||
return Response({"deleted": deleted_count}, status=200)
|
||||
Reference in New Issue
Block a user