remotes/origin/hotfix/LIL-691
gzbender 7 years ago
parent c764a34ce5
commit f156e2bb4d
  1. 4
      api/v1/urls.py
  2. 10
      api/v1/views.py

@ -18,7 +18,8 @@ from .views import (
UserViewSet, LessonViewSet, ImageObjectViewSet, UserViewSet, LessonViewSet, ImageObjectViewSet,
SchoolScheduleViewSet, LiveLessonViewSet, SchoolScheduleViewSet, LiveLessonViewSet,
PaymentViewSet, ObjectCommentsViewSet, PaymentViewSet, ObjectCommentsViewSet,
ContestViewSet, ContestWorkViewSet) ContestViewSet, ContestWorkViewSet,
AuthorBalanceUsersViewSet)
router = DefaultRouter() router = DefaultRouter()
router.register(r'author-requests', AuthorRequestViewSet, base_name='author-requests') router.register(r'author-requests', AuthorRequestViewSet, base_name='author-requests')
@ -63,6 +64,7 @@ schema_view = get_schema_view(
) )
urlpatterns = [ urlpatterns = [
path('author-balance-users/', AuthorBalanceUsersViewSet.as_view(), name='author-balance-users'),
path('api-token-auth/', ObtainToken.as_view(), name='api-token-auth'), path('api-token-auth/', ObtainToken.as_view(), name='api-token-auth'),
path('temp-auth-token/', ObtainTempToken.as_view(), name='temp-auth-token'), path('temp-auth-token/', ObtainTempToken.as_view(), name='temp-auth-token'),
path('configs/', ConfigViewSet.as_view(), name='configs'), path('configs/', ConfigViewSet.as_view(), name='configs'),

@ -78,7 +78,7 @@ User = get_user_model()
class AuthorBalanceViewSet(ExtendedModelViewSet): class AuthorBalanceViewSet(ExtendedModelViewSet):
queryset = AuthorBalance.objects.filter( queryset = AuthorBalance.objects.filter(
Q(type=1) | Q(payment__status__in=Payment.PW_PAID_STATUSES), Q(type=1) | Q(payment__status__in=Payment.PW_PAID_STATUSES),
author__role__in=[User.AUTHOR_ROLE, User.ADMIN_ROLE, User.TEACHER_ROLE], # author__role__in=[User.AUTHOR_ROLE, User.ADMIN_ROLE, User.TEACHER_ROLE],
) )
serializer_class = AuthorBalanceCreateSerializer serializer_class = AuthorBalanceCreateSerializer
serializer_class_map = { serializer_class_map = {
@ -121,6 +121,14 @@ class AuthorBalanceViewSet(ExtendedModelViewSet):
return Response(status=status.HTTP_200_OK) return Response(status=status.HTTP_200_OK)
class AuthorBalanceUsersViewSet(views.APIView):
def get(self, request):
users = AuthorBalance.objects.filter(amount__gt=0).values_list('author', flat=True)
users = User.objects.filter(id__in=users, is_active=True).order_by('first_name', 'last_name')
return Response(UserSerializer(users, many=True).data)
class BanerViewSet(ExtendedModelViewSet): class BanerViewSet(ExtendedModelViewSet):
queryset = Baner.objects.all() queryset = Baner.objects.all()
serializer_class = BanerSerializer serializer_class = BanerSerializer

Loading…
Cancel
Save