views.py 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. # coding=utf-8
  2. from rest_framework import generics, mixins
  3. from rest_framework.viewsets import GenericViewSet
  4. from utils.permission import IsCustomerUser
  5. from utils.exceptions import CustomError
  6. from utils import response_ok
  7. from apps.store.models import Shop
  8. from apps.store.filters import ShopFilter
  9. from .serializers import *
  10. class ShopViewSet(generics.ListAPIView):
  11. queryset = Shop.objects.filter(delete=False)
  12. serializer_class = ShopSerializer
  13. def filter_queryset(self, queryset):
  14. f = ShopFilter(self.request.GET, queryset=queryset)
  15. return f.qs
  16. def list(self, request, *args, **kwargs):
  17. queryset = self.filter_queryset(self.get_queryset())
  18. serializer = self.get_serializer(queryset, many=True)
  19. return response_ok(serializer.data)
  20. class ShopMapListView(generics.ListAPIView):
  21. queryset = Shop.objects.filter(delete=False)
  22. serializer_class = ShopDetailSerializer
  23. def filter_queryset(self, queryset):
  24. f = ShopFilter(self.request.GET, queryset=queryset)
  25. return f.qs
  26. def list(self, request, *args, **kwargs):
  27. queryset = self.filter_queryset(self.get_queryset())
  28. serializer = self.get_serializer(queryset, many=True)
  29. return response_ok(serializer.data)