gold eggs backend
Some checks failed
Build and Push to Docker Hub / build-test-push (push) Failing after 1m55s
Some checks failed
Build and Push to Docker Hub / build-test-push (push) Failing after 1m55s
This commit is contained in:
32
core/apps/eggs/views/order.py
Normal file
32
core/apps/eggs/views/order.py
Normal file
@@ -0,0 +1,32 @@
|
||||
"""
|
||||
Order view
|
||||
"""
|
||||
|
||||
from django.core.exceptions import PermissionDenied
|
||||
from rest_framework import viewsets
|
||||
|
||||
from core.apps.eggs import models, serializers
|
||||
from core.http.permissions import IsRole
|
||||
|
||||
|
||||
class OrderViewSet(viewsets.ModelViewSet):
|
||||
http_method_names = ["get", "post", "put", "patch", "delete"]
|
||||
permission_classes = [IsRole(["courier", "admin", "sklad", "market"])]
|
||||
|
||||
def get_queryset(self):
|
||||
user = self.request.user
|
||||
if user.role == "market":
|
||||
try:
|
||||
market_instance = models.Market.objects.get(user_id=user.id)
|
||||
return models.Order.objects.filter(
|
||||
market_id=market_instance.id
|
||||
)
|
||||
except models.Market.DoesNotExist:
|
||||
raise PermissionDenied("Bunday Market mavjud emas.")
|
||||
return models.Order.objects.all()
|
||||
|
||||
def get_serializer_class(self):
|
||||
if self.request.method == "GET":
|
||||
return serializers.OrderSerializer
|
||||
else:
|
||||
return serializers.OrderCreateSerializer
|
||||
Reference in New Issue
Block a user