Новый отчет

remotes/origin/pm_task_31703
bigboy 9 years ago
parent af0a3df739
commit 986f03c59d
  1. 1
      _utils/reports/get_learn_balance.py
  2. 45
      _utils/reports/get_success_hw_themes.py

@ -32,3 +32,4 @@ print('ДЗ в статусе прохождения: {0}'.format(_homeworks.cou
for i in CourseTheme.objects.filter(course=_course).order_by('sort'):
print('{0}: {2} [{1}]'.format(i.sort, i.get_title(), HomeworkJ.objects.filter(f_date=None, parent__material=i).exclude(date=None).count()))

@ -0,0 +1,45 @@
# coding=utf-8
import os
import django
import sys
sys.path.append("/var/www/projects/codemy/")
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "lms.settings")
django.setup()
print('## Отчет по распределению слушателей по курсу')
from courses.models import Course, CourseTheme
from finance.models import Bill
from journals.models import TeacherJ, HomeworkJ, CourseThemeJ, HomeworkTry
_courses = Course.objects.filter(public=True).order_by('id')
for _c in _courses:
print('{0}: {1}'.format(_c.id, _c.get_title()))
_c = input('Выберите курс: ')
_course = Course.objects.get(id=int(_c))
print('======')
print('# Курс: {0}'.format(_course.get_title()))
print('Оплеченых счетов: {0}'.format(Bill.objects.filter(service__course=_course, status='F').count()))
_journals = TeacherJ.objects.filter(course=_course, progress__gt=10).exclude(progress=100)
print('Студентов: {0}'.format(_journals.count()))
print('======')
def check_hj(hj):
if hj:
if HomeworkTry.objects.filter(parent=hj).exists():
return hj
return False
for i in CourseTheme.objects.filter(course=_course).order_by('sort'):
hj = map(check_hj, HomeworkJ.objects.filter(parent__material=i).exclude(f_date=None))
_hj = set()
for r in hj:
if r:
_hj.add(r)
print('{0}: {2} [{1}]'.format(i.sort, i.get_title(), len(_hj)))
Loading…
Cancel
Save