|
|
|
|
@ -11,7 +11,7 @@ from rest_framework.views import APIView |
|
|
|
|
from django.db.models import Q |
|
|
|
|
|
|
|
|
|
from progress.models import ProgressLesson, Progress |
|
|
|
|
from progress.serializers import ProgressAnalyticSerializer, ProgressLessonSerializer |
|
|
|
|
from progress.serializers import ProgressAnalyticSerializer, ProgressLessonSerializer, ProgressSerializer |
|
|
|
|
from courses.api import CourseProgressApi |
|
|
|
|
from progress.tasks import add_next_lesson |
|
|
|
|
|
|
|
|
|
@ -163,9 +163,7 @@ class StudentUpdateProgress(APIView): |
|
|
|
|
lesson_token=lesson_token, |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if not pv.status == ProgressLesson.STATUSES.wait: |
|
|
|
|
|
|
|
|
|
if pv.checker == p.teacher: |
|
|
|
|
pv.status = ProgressLesson.STATUSES.wait |
|
|
|
|
if not comment is None: |
|
|
|
|
@ -186,12 +184,11 @@ class StudentUpdateProgress(APIView): |
|
|
|
|
except ProgressLesson.DoesNotExist: |
|
|
|
|
return Response('Урок не проходится этим пользователем', status=403) |
|
|
|
|
|
|
|
|
|
res = {"current": ProgressLessonSerializer(pv).data} |
|
|
|
|
if pv.status == ProgressLesson.STATUSES.done: |
|
|
|
|
# TODO: Ассинхроннаязадача для celery |
|
|
|
|
res['next'] = ProgressLessonSerializer(add_next_lesson(p)).data |
|
|
|
|
add_next_lesson(p) |
|
|
|
|
|
|
|
|
|
return Response(res, status=200) |
|
|
|
|
return Response(ProgressSerializer(p).data, status=200) |
|
|
|
|
|
|
|
|
|
except Progress.DoesNotExist: |
|
|
|
|
return Response('Не найден прогресс по заданным параметрам', status=404) |
|
|
|
|
|