Skip to content
Snippets Groups Projects
Verified Commit 515daca6 authored by magicfelix's avatar magicfelix
Browse files

Automatically create LessonDocumentations for past periods

parent cd7eeebf
No related branches found
No related tags found
1 merge request!284Draft: Redesign entering of lesson documentation
import graphene import graphene
from datetime import datetime
from graphene_django import DjangoObjectType from graphene_django import DjangoObjectType
from graphene_django.forms.mutation import DjangoModelFormMutation from graphene_django.forms.mutation import DjangoModelFormMutation
from aleksis.apps.chronos.models import LessonPeriod from aleksis.apps.chronos.models import Lesson
from aleksis.core.models import Person, Group from aleksis.core.models import Group, Person
from .forms import LessonDocumentationForm
from .models import Event, ExcuseType, ExtraLesson, LessonDocumentation, LessonPeriod, PersonalNote, ExtraMark from .models import (
Event,
ExcuseType,
ExtraLesson,
ExtraMark,
LessonDocumentation,
LessonPeriod,
PersonalNote,
)
class ExcuseTypeType(DjangoObjectType): class ExcuseTypeType(DjangoObjectType):
...@@ -199,7 +208,13 @@ class Query(graphene.ObjectType): ...@@ -199,7 +208,13 @@ class Query(graphene.ObjectType):
def resolve_lesson_documentation_by_id(root, info, id, **kwargs): def resolve_lesson_documentation_by_id(root, info, id, **kwargs):
return LessonDocumentation.objects.get(id=id) return LessonDocumentation.objects.get(id=id)
def resolve_lesson_documentations_by_lesson_id(root, info, id, **kwargs): def resolve_lesson_documentations_by_lesson_id(root, info, id, **kwargs): # noqa
lesson = Lesson.objects.get(id=id)
now = datetime.now()
for planned in lesson.planned_lessonperiods_datetimes:
if planned["datetime_start"] <= now:
LessonDocumentation.objects.get_or_create(week=planned["week"], year=planned["year"], lesson_period=planned["lesson_period"]) # FIXME: Queries shouldn't alter data
return LessonDocumentation.objects.filter( return LessonDocumentation.objects.filter(
lesson_period_id__in=LessonPeriod.objects.filter( lesson_period_id__in=LessonPeriod.objects.filter(
lesson_id=id lesson_id=id
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment