Create Vorbereitungsauftrag Kickoff
This commit is contained in:
parent
1fa420a11b
commit
45161788cc
|
|
@ -1,3 +1,7 @@
|
|||
from wagtail.blocks import StreamValue
|
||||
from wagtail.blocks.list_block import ListBlock, ListValue
|
||||
from wagtail.rich_text import RichText
|
||||
|
||||
from vbv_lernwelt.assignment.models import (
|
||||
AssignmentListPage,
|
||||
AssignmentType,
|
||||
|
|
@ -16,12 +20,9 @@ from vbv_lernwelt.assignment.tests.assignment_factories import (
|
|||
from vbv_lernwelt.core.utils import replace_whitespace
|
||||
from vbv_lernwelt.course.consts import COURSE_UK
|
||||
from vbv_lernwelt.course.models import CoursePage
|
||||
from wagtail.blocks import StreamValue
|
||||
from wagtail.blocks.list_block import ListBlock, ListValue
|
||||
from wagtail.rich_text import RichText
|
||||
|
||||
|
||||
def create_uk_casework(course_id=COURSE_UK):
|
||||
def create_uk_fahrzeug_casework(course_id=COURSE_UK):
|
||||
assignment_list_page = (
|
||||
CoursePage.objects.get(course_id=course_id)
|
||||
.get_children()
|
||||
|
|
@ -465,7 +466,7 @@ def create_uk_casework(course_id=COURSE_UK):
|
|||
return assignment
|
||||
|
||||
|
||||
def create_uk_prep_assignment(course_id=COURSE_UK):
|
||||
def create_uk_fahrzeug_prep_assignment(course_id=COURSE_UK):
|
||||
assignment_list_page = (
|
||||
CoursePage.objects.get(course_id=course_id)
|
||||
.get_children()
|
||||
|
|
@ -489,7 +490,7 @@ def create_uk_prep_assignment(course_id=COURSE_UK):
|
|||
<li>d2pv.ük4: Sie erläutern die Prozesse und Abläufe im privaten Versicherungsbereich. (K2)</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
|
||||
<p>
|
||||
Handlungskompetenz e4: Betriebsbezogene Inhalte multimedial aufbereiten<br/>
|
||||
Arbeitssituation 1: Charakteristiken der Branche und Stärken des Betriebs einbringen<br/>
|
||||
|
|
@ -499,10 +500,10 @@ def create_uk_prep_assignment(course_id=COURSE_UK):
|
|||
<li>e4.pv.ük4: Sie erläutern die Grundlagen der Produkte von Privatversicherungen. (K2)</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
|
||||
<h3>Ausgangslage</h3>
|
||||
<p>
|
||||
Stell dir vor, du hast die Autoprüfung abgeschlossen und nun kann es endlich losgehen mit deiner Mobilität.
|
||||
Stell dir vor, du hast die Autoprüfung abgeschlossen und nun kann es endlich losgehen mit deiner Mobilität.
|
||||
Welches wird dein erstes eigenes Auto sein? Dieses Auto möchtest du natürlich auch schützen und richtig
|
||||
versichern.
|
||||
</p>
|
||||
|
|
@ -780,6 +781,160 @@ def create_uk_prep_assignment(course_id=COURSE_UK):
|
|||
return assignment
|
||||
|
||||
|
||||
def create_uk_kickoff_prep_assignment(course_id=COURSE_UK):
|
||||
assignment_list_page = (
|
||||
CoursePage.objects.get(course_id=course_id)
|
||||
.get_children()
|
||||
.exact_type(AssignmentListPage)
|
||||
.first()
|
||||
)
|
||||
|
||||
assignment = AssignmentFactory(
|
||||
parent=assignment_list_page,
|
||||
assignment_type=AssignmentType.PREP_ASSIGNMENT.name,
|
||||
title="Kickoff - Versicherungswirtschaft",
|
||||
effort_required="ca. 2 Stunden",
|
||||
intro_text=replace_whitespace(
|
||||
"""
|
||||
<h3>Handlungskompetenzen, Arbeitssituationen & Leistungsziele</h3>
|
||||
<p>
|
||||
Handlungskompetenz d2: Informations- und Beratungsgespräch mit Kunden oder Lieferanten führen<br/>
|
||||
Arbeitssituation 4: Kunden beraten und dazugehörige Prozesse abwickeln<br/>
|
||||
<ul>
|
||||
<li>d2.pv.ük1: Sie beschreiben die wichtigsten gesetzlichen Grundlagen im Versicherungsbereich umfassend</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Handlungskompetenz c3: Betriebliche Prozesse dokumentieren, koordinieren und umsetzen<br/>
|
||||
Arbeitssituation 5: Anträge verarbeiten, Verträge gestalten, Produkte entwickeln und pflegen<br/>
|
||||
<ul>
|
||||
<li>c3.pv.ük6: Sie nennen die gängigen Grundsätze bei der Gestaltung von Produkten und Dienstleistungen im Versicherungsbereich (K1)</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
<h3>Ausgangslage</h3>
|
||||
<p>
|
||||
Das Leben hat nicht nur Sonnenseiten, es birgt auch Risiken in sich. So können wir schon morgen einen
|
||||
Unfall haben oder schwer erkranken. Oder ein Haus wird durch ein Hagelzug ziemlich beschädigt. Vor
|
||||
solchen Risiken kann sich niemand vollständig schützen. Jedoch können wir uns gegen den finanziellen
|
||||
Schaden absichern. Diese Art von Schutz bieten Versicherungen.<br/>
|
||||
In dieser Sequenz beschäftigen wir uns damit, das eigentlich eine Versicherung ausmacht.
|
||||
</p>
|
||||
"""
|
||||
),
|
||||
performance_objectives=[],
|
||||
)
|
||||
|
||||
assignment.tasks = []
|
||||
assignment.tasks.append(
|
||||
(
|
||||
"task",
|
||||
TaskBlockFactory(
|
||||
title="Teilaufgabe 1: Verschaffe dir einen ersten Überblick zum Thema.",
|
||||
# it is hard to create a StreamValue programmatically, we have to
|
||||
# create a `StreamValue` manually. Ask Daniel and/or Ramon
|
||||
content=StreamValue(
|
||||
TaskContentStreamBlock(),
|
||||
stream_data=[
|
||||
(
|
||||
"explanation",
|
||||
ExplanationBlockFactory(
|
||||
text=RichText(
|
||||
'Schaue dazu das folgende Video: <a href="https://www.youtube.com/watch?v=NgttivRt6Fo&list=PL1caXvEGRT26oPfYc2C7CbYrldQQglzFI&index=2" target="_blank"> Wie funktioniert eine Versicherung? – Einfach erklärt </a>'
|
||||
)
|
||||
),
|
||||
),
|
||||
(
|
||||
"user_confirmation",
|
||||
ExplanationBlockFactory(
|
||||
text=RichText(
|
||||
"Ja, ich habe das Video angeschaut und verstanden."
|
||||
)
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
)
|
||||
)
|
||||
|
||||
assignment.tasks.append(
|
||||
(
|
||||
"task",
|
||||
TaskBlockFactory(
|
||||
title="Teilaufgabe 2: «Idee Versicherung» lesen",
|
||||
# it is hard to create a StreamValue programmatically, we have to
|
||||
# create a `StreamValue` manually. Ask Daniel and/or Ramon
|
||||
content=StreamValue(
|
||||
TaskContentStreamBlock(),
|
||||
stream_data=[
|
||||
(
|
||||
"explanation",
|
||||
ExplanationBlockFactory(
|
||||
text=RichText(
|
||||
"Lese und bearbeite im Buch «Idee Versicherung» die Seiten 12 bis 30."
|
||||
)
|
||||
),
|
||||
),
|
||||
(
|
||||
"user_confirmation",
|
||||
ExplanationBlockFactory(
|
||||
text=RichText(
|
||||
"Ja, ich habe die Seiten gelesen und verstanden."
|
||||
)
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
)
|
||||
)
|
||||
|
||||
assignment.tasks.append(
|
||||
(
|
||||
"task",
|
||||
TaskBlockFactory(
|
||||
title="Teilaufgabe 3: Skizze erstellen",
|
||||
# it is hard to create a StreamValue programmatically, we have to
|
||||
# create a `StreamValue` manually. Ask Daniel and/or Ramon
|
||||
content=StreamValue(
|
||||
TaskContentStreamBlock(),
|
||||
stream_data=[
|
||||
(
|
||||
"explanation",
|
||||
ExplanationBlockFactory(
|
||||
text=RichText(
|
||||
replace_whitespace(
|
||||
"""
|
||||
<p>
|
||||
Erstelle aufgrund des Gelesenen eine Skizze, welche für dich das Grundprinzip einer Versicherung darstellt.
|
||||
</p>
|
||||
<p>
|
||||
Nimm diese Skizze mit in den Unterricht.
|
||||
</p>
|
||||
"""
|
||||
)
|
||||
)
|
||||
),
|
||||
),
|
||||
(
|
||||
"user_confirmation",
|
||||
ExplanationBlockFactory(
|
||||
text=RichText("Ja, ich habe die Skizze erstellt.")
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
)
|
||||
)
|
||||
|
||||
assignment.save()
|
||||
|
||||
return assignment
|
||||
|
||||
|
||||
def create_uk_reflection(course_id=COURSE_UK, circle_title="Fahrzeug"):
|
||||
assignment_list_page = (
|
||||
CoursePage.objects.get(course_id=course_id)
|
||||
|
|
@ -796,10 +951,10 @@ def create_uk_reflection(course_id=COURSE_UK, circle_title="Fahrzeug"):
|
|||
intro_text=replace_whitespace(
|
||||
"""
|
||||
<p>
|
||||
Du hast in diesem Circle viele neue Inhalte und Inputs erhalten.
|
||||
Nun ist es Zeit, nochmals auf dein Kompetenzprofil zu schauen.
|
||||
Das Beantworten von Reflexionsfragen hilft dir den eigenen Lern- und Denkprozess sichtbar und begreifbar zu machen.
|
||||
Es deckt deine persönlichen Stärken und Schwächen während der Erarbeitung auf und hilft dir, dich laufend zu verbessern.
|
||||
Du hast in diesem Circle viele neue Inhalte und Inputs erhalten.
|
||||
Nun ist es Zeit, nochmals auf dein Kompetenzprofil zu schauen.
|
||||
Das Beantworten von Reflexionsfragen hilft dir den eigenen Lern- und Denkprozess sichtbar und begreifbar zu machen.
|
||||
Es deckt deine persönlichen Stärken und Schwächen während der Erarbeitung auf und hilft dir, dich laufend zu verbessern.
|
||||
</p>
|
||||
"""
|
||||
),
|
||||
|
|
|
|||
|
|
@ -3,7 +3,9 @@ import json
|
|||
from django.utils import timezone
|
||||
from rest_framework.test import APITestCase
|
||||
|
||||
from vbv_lernwelt.assignment.creators.create_assignments import create_uk_casework
|
||||
from vbv_lernwelt.assignment.creators.create_assignments import (
|
||||
create_uk_fahrzeug_casework,
|
||||
)
|
||||
from vbv_lernwelt.assignment.models import (
|
||||
AssignmentCompletion,
|
||||
AssignmentCompletionAuditLog,
|
||||
|
|
@ -20,7 +22,7 @@ class AssignmentApiTestCase(APITestCase):
|
|||
def setUp(self) -> None:
|
||||
create_default_users()
|
||||
create_test_course(include_vv=False)
|
||||
self.assignment = create_uk_casework(course_id=COURSE_TEST_ID)
|
||||
self.assignment = create_uk_fahrzeug_casework(course_id=COURSE_TEST_ID)
|
||||
self.assignment_subtasks = self.assignment.filter_user_subtasks()
|
||||
|
||||
self.cs = CourseSession.objects.create(
|
||||
|
|
|
|||
|
|
@ -7,8 +7,8 @@ from wagtail.models import Site
|
|||
from wagtail.rich_text import RichText
|
||||
|
||||
from vbv_lernwelt.assignment.creators.create_assignments import (
|
||||
create_uk_casework,
|
||||
create_uk_prep_assignment,
|
||||
create_uk_fahrzeug_casework,
|
||||
create_uk_fahrzeug_prep_assignment,
|
||||
)
|
||||
from vbv_lernwelt.assignment.models import Assignment
|
||||
from vbv_lernwelt.assignment.services import update_assignment_completion
|
||||
|
|
@ -72,8 +72,8 @@ def create_test_course(include_uk=True, include_vv=True, with_sessions=False):
|
|||
_assignment_list_page = AssignmentListPageFactory(
|
||||
parent=course_page,
|
||||
)
|
||||
create_uk_casework(course_id=COURSE_TEST_ID)
|
||||
create_uk_prep_assignment(course_id=COURSE_TEST_ID)
|
||||
create_uk_fahrzeug_casework(course_id=COURSE_TEST_ID)
|
||||
create_uk_fahrzeug_prep_assignment(course_id=COURSE_TEST_ID)
|
||||
|
||||
create_test_learning_path(include_uk=include_uk, include_vv=include_vv)
|
||||
create_test_media_library()
|
||||
|
|
|
|||
|
|
@ -24,6 +24,9 @@ from vbv_lernwelt.learnpath.tests.learning_path_factories import (
|
|||
LearningUnitFactory,
|
||||
TopicFactory,
|
||||
)
|
||||
from vbv_lernwelt.media_library.tests.media_library_factories import (
|
||||
LearnMediaBlockFactory,
|
||||
)
|
||||
|
||||
|
||||
def create_uk_learning_path(course_id=COURSE_UK, user=None, skip_locales=True):
|
||||
|
|
@ -230,20 +233,56 @@ In diesem Circle erfährst du wie die überbetrieblichen Kurse aufgebaut sind. Z
|
|||
title=f"Allgemeines zu Versicherungen",
|
||||
parent=circle,
|
||||
description=RichText(
|
||||
f"<p>In der Mediathek unter dem Handlungsfeld «{title}» findest du alle relevanten Ressourcen für deine Fachkompetenzen.</p>"
|
||||
f"<p>In der Mediathek unter «Allgemeines zu Versicherungen» findest du alle relevanten Ressourcen für deine Fachkompetenzen.</p>"
|
||||
f"<p>Wir empfehlen dir vor der Absolvierung der weiteren Lerneinheiten dich in die Thematik einzulesen.</p>"
|
||||
),
|
||||
content_url=f"/course/überbetriebliche-kurse/media/category/{slugify(title)}",
|
||||
content_url=f"/course/überbetriebliche-kurse/media",
|
||||
)
|
||||
LearningContentPlaceholderFactory(
|
||||
title="Vorbereitungsauftrag",
|
||||
LearningContentAssignmentFactory(
|
||||
title="Versicherungswirtschaft",
|
||||
assignment_type="PREP_ASSIGNMENT",
|
||||
parent=circle,
|
||||
)
|
||||
content_assignment=Assignment.objects.get(
|
||||
slug__startswith=f"überbetriebliche-kurse-assignment-kickoff-versicherungswirtschaft"
|
||||
),
|
||||
),
|
||||
LearningSequenceFactory(title="Training", parent=circle)
|
||||
LearningUnitFactory(title="Unterlagen", parent=circle)
|
||||
LearningContentPlaceholderFactory(
|
||||
LearningContentDocumentListFactory(
|
||||
title="Unterlagen für den Unterricht",
|
||||
parent=circle,
|
||||
documents=[
|
||||
(
|
||||
"document",
|
||||
LearnMediaBlockFactory(
|
||||
title="Präsentation 1a",
|
||||
description="",
|
||||
icon_url="/static/icons/demo/icon-hf-book.png",
|
||||
link_display_text="Dokument anzeigen",
|
||||
url="/static/media/uk/de_üK1_KO_03b_A_Einteilungen.pdf",
|
||||
),
|
||||
),
|
||||
(
|
||||
"document",
|
||||
LearnMediaBlockFactory(
|
||||
title="Präsentation 1b",
|
||||
description="",
|
||||
icon_url="/static/icons/demo/icon-hf-book.png",
|
||||
link_display_text="Dokument anzeigen",
|
||||
url="/static/media/uk/de_üK1_KO_03b_A_Einteilungen.pdf",
|
||||
),
|
||||
),
|
||||
(
|
||||
"document",
|
||||
LearnMediaBlockFactory(
|
||||
title="Arbeitsblatt Einteilung der Versicherungen",
|
||||
description="",
|
||||
icon_url="/static/icons/demo/icon-hf-book.png",
|
||||
link_display_text="Dokument anzeigen",
|
||||
url="/static/media/uk/de_üK1_KO_03b_A_Einteilungen.pdf",
|
||||
),
|
||||
),
|
||||
],
|
||||
)
|
||||
LearningUnitFactory(title="Präsenzkurs", parent=circle)
|
||||
LearningContentAttendanceCourseFactory(
|
||||
|
|
|
|||
|
|
@ -3,9 +3,10 @@ import random
|
|||
import djclick as click
|
||||
|
||||
from vbv_lernwelt.assignment.creators.create_assignments import (
|
||||
create_uk_casework,
|
||||
create_uk_prep_assignment,
|
||||
create_uk_fahrzeug_casework,
|
||||
create_uk_fahrzeug_prep_assignment,
|
||||
create_uk_reflection,
|
||||
create_uk_kickoff_prep_assignment,
|
||||
)
|
||||
from vbv_lernwelt.assignment.models import Assignment
|
||||
from vbv_lernwelt.assignment.services import update_assignment_completion
|
||||
|
|
@ -169,8 +170,9 @@ def create_course_uk_de():
|
|||
_assignment_list_page = AssignmentListPageFactory(
|
||||
parent=course.coursepage,
|
||||
)
|
||||
create_uk_casework(course_id=COURSE_UK)
|
||||
create_uk_prep_assignment(course_id=COURSE_UK)
|
||||
create_uk_kickoff_prep_assignment(course_id=COURSE_UK)
|
||||
create_uk_fahrzeug_casework(course_id=COURSE_UK)
|
||||
create_uk_fahrzeug_prep_assignment(course_id=COURSE_UK)
|
||||
create_uk_reflection(course_id=COURSE_UK)
|
||||
|
||||
# learning path
|
||||
|
|
@ -427,8 +429,8 @@ def create_course_training_de():
|
|||
_assignment_list_page = AssignmentListPageFactory(
|
||||
parent=course.coursepage,
|
||||
)
|
||||
create_uk_casework(course_id=COURSE_UK_TRAINING)
|
||||
create_uk_prep_assignment(course_id=COURSE_UK_TRAINING)
|
||||
create_uk_fahrzeug_casework(course_id=COURSE_UK_TRAINING)
|
||||
create_uk_fahrzeug_prep_assignment(course_id=COURSE_UK_TRAINING)
|
||||
create_uk_reflection(course_id=COURSE_UK_TRAINING)
|
||||
|
||||
create_uk_training_learning_path(course_id=COURSE_UK_TRAINING)
|
||||
|
|
|
|||
Binary file not shown.
Loading…
Reference in New Issue