clean up swagger

This commit is contained in:
Parsa Nazer
2025-03-27 22:15:31 +03:30
parent d36a073e71
commit 6d61508ea2
4 changed files with 32 additions and 10 deletions
+22 -5
View File
@@ -10,7 +10,7 @@ from .models import OrderItemModel, OrderModel, DiscountCode
from .permissons import CanDeleteCartItemPermissions, GetOrderPermission, SetAddressPermissions
from azbankgateways import bankfactories, models as bank_models
from azbankgateways.exceptions import AZBankGatewaysException
from drf_spectacular.utils import extend_schema, OpenApiParameter, OpenApiTypes
from drf_spectacular.utils import extend_schema, OpenApiParameter, OpenApiTypes, extend_schema_view
from utils.pagination import StructurePagination
from order.models import OrderModel
from django.urls import reverse
@@ -23,7 +23,10 @@ from account.models import UserAddressModel
# pass
@extend_schema_view(
post=extend_schema(tags=["cart discount code"]),
delete=extend_schema(tags=["cart discount code"]),
)
class ApplyDiscountView(APIView):
serializer_class = DiscountCodeSerializer
permission_classes = [IsAuthenticated]
@@ -52,6 +55,9 @@ class ApplyDiscountView(APIView):
class CartItemClear(APIView):
permission_classes = [IsAuthenticated]
serializer_class = OrderItemSerailzier
@extend_schema(
tags=["order cart"]
)
def delete(self, request):
cart_order, created = OrderModel.objects.get_or_create(
user=request.user,
@@ -60,7 +66,10 @@ class CartItemClear(APIView):
cart_order.items.all().delete()
return Response({'detail': f'سبد خرید با موفقیت خالی شد'}, status=status.HTTP_204_NO_CONTENT)
@extend_schema_view(
post=extend_schema(tags=["order cart"]),
delete=extend_schema(tags=["order cart"]),
)
class CartItemViews(APIView):
permission_classes = [IsAuthenticated]
serializer_class = OrderItemSerailzier
@@ -101,6 +110,9 @@ class CartItemViews(APIView):
class CartView(APIView):
permission_classes = [IsAuthenticated]
serializer_class = CartSerializer
@extend_schema(
tags=["order cart"]
)
def get(self, request):
user = request.user
cart_instance, created = OrderModel.objects.get_or_create(user=user, status='CART')
@@ -144,7 +156,8 @@ class OrderlistView(APIView):
required=False,
type=OpenApiTypes.STR,
),
]
],
tags=["order"]
)
def get(self, request):
user = request.user
@@ -191,7 +204,8 @@ class PaymentView(APIView):
permission_classes = [IsAuthenticated]
serializer_class = BankTypeSerializer
@extend_schema(
description="choices=['BMI', 'SEP', 'ZARINPAL', 'IDPAY', 'ZIBAL', 'BAHAMTA', 'MELLAT', 'PAYV1']"
description="choices=['BMI', 'SEP', 'ZARINPAL', 'IDPAY', 'ZIBAL', 'BAHAMTA', 'MELLAT', 'PAYV1']",
tags=['order payment']
)
def post(self, request):
print(request.data.get('gateway_type'))
@@ -261,6 +275,9 @@ class SetAddressSerilizer(serializers.Serializer):
class SetAddressForCartView(APIView):
serializer_class = SetAddressSerilizer
permission_classes = [IsAuthenticated, SetAddressPermissions]
@extend_schema(
tags=["order cart"]
)
def post(self, request):
address_id = request.data.get('address_id', None)
if not address_id: