views.py 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. # coding=utf-8
  2. from django.utils import timezone
  3. from django.db import transaction
  4. from django.db.models import F
  5. from django.conf import settings
  6. from rest_framework import generics, mixins
  7. from rest_framework.views import APIView
  8. from rest_framework.viewsets import GenericViewSet
  9. from rest_framework.decorators import action
  10. from rest_framework.exceptions import NotFound
  11. from utils import response_ok
  12. from utils.permission import IsCustomerUser
  13. from utils.exceptions import CustomError
  14. from .serializers import ActivitySerializer
  15. from apps.activity.models import Activity
  16. from apps.activity.filters import ActivityFilter
  17. class ActivityListViewSet(generics.ListAPIView):
  18. queryset = Activity.objects.filter(delete=False)
  19. serializer_class = ActivitySerializer
  20. def filter_queryset(self, queryset):
  21. f = ActivityFilter(self.request.GET, queryset=queryset)
  22. return f.qs
  23. def list(self, request, *args, **kwargs):
  24. queryset = self.filter_queryset(self.get_queryset())
  25. serializer = self.get_serializer(queryset, many=True)
  26. return response_ok(serializer.data)