feature/fix_generate_pass
Andrey 8 years ago
parent 07e254df8a
commit 6a2ff47daa
  1. 10
      access/views.py
  2. 12
      config_app/management/commands/set_seq.py
  3. 1
      storage/api.py
  4. 2
      storage/models.py
  5. 2
      storage/serializers.py
  6. 2
      storage/views.py

@ -246,6 +246,8 @@ class UpdateProgress(APIView):
""" """
lesson_token = request.JSON.get('lesson_token', None) lesson_token = request.JSON.get('lesson_token', None)
course_token = request.JSON.get('course_token', None) course_token = request.JSON.get('course_token', None)
comment = request.JSON.get('comment', None)
if lesson_token is None or course_token is None: if lesson_token is None or course_token is None:
return Response('Не передан слаг курса или токен урока', status=400) return Response('Не передан слаг курса или токен урока', status=400)
try: try:
@ -263,7 +265,13 @@ class UpdateProgress(APIView):
progress=p, progress=p,
lesson_token=lesson_token, lesson_token=lesson_token,
) )
pv.status = ProgressLesson.STATUSES.done
if not comment is None:
pv.comment_tokens.append(comment)
else:
pv.status = ProgressLesson.STATUSES.done
pv.save() pv.save()
return Response(ProgressLessonSerializer(pv).data, status=200) return Response(ProgressLessonSerializer(pv).data, status=200)

@ -1,6 +1,6 @@
from django.contrib.contenttypes.models import ContentType from django.contrib.contenttypes.models import ContentType
from django.core.management.base import BaseCommand, CommandError from django.core.management.base import BaseCommand
from django.db import connection from django.db import connection, ProgrammingError, InternalError
from lms.settings import apps from lms.settings import apps
@ -10,13 +10,13 @@ class Command(BaseCommand):
def handle(self, **_): def handle(self, **_):
with connection.cursor() as cursor: with connection.cursor() as cursor:
for i in ContentType.objects.all(): for i in ContentType.objects.all():
if i.app_label in apps: if i.app_label in apps and not i.model_class().objects.count() == 0:
model_name = "%s_%s" % (i.app_label, i.model) model_name = "%s_%s" % (i.app_label, i.model)
cursor.execute('BEGIN') cursor.execute('BEGIN')
cursor.execute('LOCK TABLE %s IN EXCLUSIVE MODE' % model_name) cursor.execute('LOCK TABLE %s IN EXCLUSIVE MODE' % model_name)
cursor.execute( cursor.execute(
"""SELECT setval('%s_id_seq', COALESCE( """SELECT setval('%s_id_seq', COALESCE(
(SELECT MAX(id)+1 FROM %s), 1) ,false (SELECT MAX(id)+1 FROM %s), 1) ,false
)""" % (model_name, model_name) )""" % (model_name, model_name)
) )
cursor.execute('COMMIT') cursor.execute('COMMIT')

@ -10,6 +10,7 @@ def upload_file(original=None, name=None, base64=None, **_kwargs) -> File:
if name: if name:
new_file.name = name new_file.name = name
new_file.save() new_file.save()
return new_file return new_file

@ -25,7 +25,7 @@ class File(models.Model):
objects = FileManager() objects = FileManager()
def __str__(self): def __str__(self):
return '%s' % self.original return '%s %s' % (self.name or "Без имени", self.original)
class Meta: class Meta:
verbose_name = 'Файл' verbose_name = 'Файл'

@ -21,7 +21,7 @@ class CommentSerializer(serializers.ModelSerializer):
class Meta: class Meta:
model = Comment model = Comment
exclude = ('id', 'token',) exclude = ('id',)
@staticmethod @staticmethod
def get_files(self): def get_files(self):

@ -37,9 +37,7 @@ class CommentView(APIView):
files = request.JSON.get('files', []) files = request.JSON.get('files', [])
if user_key: if user_key:
print(user_key)
comment = add_comment(text=text, out_key=user_key, files=files) comment = add_comment(text=text, out_key=user_key, files=files)
print(comment)
return Response(CommentSerializer(comment).data, status=200) return Response(CommentSerializer(comment).data, status=200)
return Response("user_token mast be set", status=400) return Response("user_token mast be set", status=400)

Loading…
Cancel
Save