vbv/server/vbv_lernwelt/learnpath/tests/create_default_learning_pat...

145 lines
8.8 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import wagtail_factories
from django.conf import settings
from wagtail.core.models import Site, Page
from vbv_lernwelt.core.admin import User
from vbv_lernwelt.learnpath.models import LearningPath, Topic, Circle, LearningSequence, LearningUnit
from vbv_lernwelt.learnpath.tests.learning_path_factories import LearningPathFactory, TopicFactory, CircleFactory, \
LearningSequenceFactory, LearningUnitFactory, VideoBlockFactory, WebBasedTrainingBlockFactory
def create_default_learning_path(user=None):
if user is None:
user = User.objects.get(username='admin')
site = Site.objects.filter(is_default_site=True).first()
if not site:
site = wagtail_factories.SiteFactory(is_default_site=True)
if settings.APP_ENVIRONMENT == 'development':
site.port = 8000
site.save()
# create_default_competences()
lp = LearningPathFactory(title="Versicherungsvermittler/in", parent=site.root_page)
tp = TopicFactory(title="Basis", is_visible=False, learning_path=lp)
circle_1 = CircleFactory(title="Basis", parent=lp, topic=tp, description="""
In diesem Circle erklären wir dir, wie der Lehrgang
Versicherungsvermittler / in " aufgebaut ist. Zudem vermitteln wir dir die wichtigsten Grundlagen,
damit erfolgreich mit deinem Lernpfad starten kannst.""")
tp = TopicFactory(title="Gewinnen von Kunden", learning_path=lp)
circle_2 = CircleFactory(title="Gewinnen", parent=lp, description="""Versicherungsvermittlerinnen und -vermittler verfügen über
ein starkes Netzwerk, das sie gezielt pflegen und ausbauen. Sie beraten und betreuen ihre bestehenden Kundinnen und Kunden professionell und gewinnen so ihr Vertrauen. Dadurch schaffen sie die Basis für das Gewinnen
von neuen Kundinnen und Kunden. Versicherungsvermittlerinnen und -vermittler sprechen ihre bestehenden Kundinnen
und Kunden auf Weiterempfehlung an. So nutzen sie ihre
bestehenden Kontakte geschickt für das Anwerben von
Neukundinnen und -kunden.
""", goals="""— Bestehende Kunden so zu beraten, dass
sie von diesen weiterempfohlen werden
— Geeignete Personen wie z.B. Garagisten, Architekten, Treuhänder auf die
Vermittlung/Zusammenarbeit anzusprechen
— Verschiedene Datenquellen wie Internet, Telefonbuch, Handelszeitung, Baugesuche etc. Gezielt für die Gewinnung
von Neukunden zu benützen
— Ein beliebiges Gespräch resp. Einen bestehenden Kontakt in die Richtung
«Versicherung» zu lenken
— Das Thema Risiko und Sicherheit in einem Gespräch gezielt und auf die Situation des jeweiligen Gesprächspartners bezogen einfliessen zu lassen
— Im täglichen Kontakt potenzielle Kundinnen und Kunden zu erkennen""")
tp = TopicFactory(title="Beraten der Kunden", learning_path=lp)
circle_3 = CircleFactory(title="Einstieg", parent=lp, topic=tp)
circle_4 = CircleFactory(title="Analyse", parent=lp, topic=tp,
description="""Nach dem Gespräch werten sie die Analyse aus und erstellen mit den
zur Verfügung stehenden Systemen formal korrekte Lösungsvorschläge bzw.
Ausschreibungen. Je nach Komplexität der Situation ziehen sie die nötigen
Fachspezialisten bei.""",
goals="""
— Aus dem IST-Zustand (aus der durchgeführten Analyse) individuelle, risikogewichtete und finanzierbare Lösungsvorschläge zu erarbeiten
— Eine Unterversicherung, eine Doppeloder Überversicherung oder einen fehlenden Versicherungsschutz festzustellen
— Mögliches Optimierungspotential unter Berücksichtigung der finanziellen
Situation des Kunden zu erkennen
— Lösungsvorschläge zu skizzieren und
zu visualisieren""")
sequence_1 = LearningSequenceFactory(title="Starten", parent=circle_4)
learning_unit = LearningUnitFactory(title='Einleitung Circle "Anlayse"', parent=circle_4)
learning_unit = LearningUnitFactory.create(title='** Einstieg Video"', parent=circle_4)
video_url = "https://www.vbv.ch/fileadmin/vbv/Videos/Statements_Externe/Janos_M/Testimonial_Janos_Mischler_PositiveEffekte.mp4"
video_title = "Ausbildung ist pflicht"
video_description = "Erfahren Sie, was für Janos Mischler die positiven Aspekte von ständiger Weiterbildung sind aus fachlicher und aus persönlicher Sicht."
video_block = VideoBlockFactory(content_type="video", url=video_url, title=video_title, description=video_description)
learning_unit.contents.append(('video', video_block))
learning_unit.save()
learning_unit = LearningUnitFactory.create(title='** Web Based Training"', parent=circle_4)
wbt_url = "web_based_trainings/rise_cmi5_test_export/scormcontent/index.html"
wbt_block = WebBasedTrainingBlockFactory(content_type="web_based_training", url=wbt_url)
learning_unit.contents.append(('web_based_training', wbt_block))
learning_unit.save()
learning_unit = LearningUnitFactory.create(title="Selbsteinschätzung", parent=circle_4)
sequence_2 = LearningSequenceFactory.create(title="Beobachten", parent=circle_4)
learning_unit = LearningUnitFactory.create(title="Mein Motorfahrzeug kaufen", parent=circle_4)
learning_unit = LearningUnitFactory.create(title="Sich selbständig machen", parent=circle_4)
sequence_3 = LearningSequenceFactory.create(title="Anwenden", parent=circle_4)
learning_unit = LearningUnitFactory.create(title="Nora kauft sich ein neues Auto", parent=circle_4)
learning_unit = LearningUnitFactory.create(title="Manuel träumt von einem neuen Tesla", parent=circle_4)
learning_unit = LearningUnitFactory.create(title="Deine Erkenntnisse und Learnings", parent=circle_4)
sequence_4 = LearningSequenceFactory.create(title="Üben", parent=circle_4)
learning_unit = LearningUnitFactory.create(title="Ermittlung des Kundenbedarfs", parent=circle_4)
learning_unit = LearningUnitFactory.create(title="Aktives Zuhören", parent=circle_4)
learning_unit = LearningUnitFactory.create(title="In Bildern Sprechen", parent=circle_4)
learning_unit = LearningUnitFactory.create(title="Priorisieren des Bedarfs", parent=circle_4)
learning_unit = LearningUnitFactory.create(title="Zusammenfassung des Bedarfs", parent=circle_4)
sequence_5 = LearningSequenceFactory.create(title="Testen", parent=circle_4)
learning_unit = LearningUnitFactory.create(title="Bedarfsfragen", parent=circle_4)
learning_unit = LearningUnitFactory.create(title="Andwendung der Fragetechniken", parent=circle_4)
sequence_5 = LearningSequenceFactory.create(title="Vernetzen", parent=circle_4)
learning_unit = LearningUnitFactory.create(title="Online Training", parent=circle_4)
sequence_6 = LearningSequenceFactory.create(title="Beenden", parent=circle_4)
learning_unit = LearningUnitFactory.create(title="Selbsteinschätzung", parent=circle_4)
circle_5 = CircleFactory.create(title="Lösung",
parent=lp,
topic=tp,
goals="""— Die Daten des Kunden korrekt in die notwendigen Systeme einzutragen
— Fachspezialisten beizuziehen, falls dies angezeigt ist
— Mit den zur Verfügung stehenden Systemen korrekte Lösungsvorschläge
(z.B. Offerten oder Ausschreibungen) zu verfassen
— Falls nötig die Lösungsvorschläge dem Underwriting weiterzuleiten und
Unklarheiten zu bereinigen """)
circle_6 = CircleFactory.create(title="Abschluss",
parent=lp,
topic=tp,
goals="""— Je nach Komplexität der Lösungsvorschläge (z.B. Offerten oder Offertvergleich) einen Fachspezialisten aufzubieten
— Sich kundenorientiert auf das Gespräch vorzubereiten und sich passend zu präsentieren""")
tp = TopicFactory.create(title="Betreuen und Ausbauen des Kundenstamms", learning_path=lp)
circle_7 = CircleFactory.create(title="Betreuen", parent=lp, topic=tp)
tp = TopicFactory.create(title="Prüfung", is_visible=False, learning_path=lp)
circle_7 = CircleFactory.create(title="Prüfungsvorbereitung", parent=lp, topic=tp)
# all pages belong to 'admin' by default
Page.objects.update(owner=user)
def delete_default_learning_path():
LearningUnit.objects.all().delete()
LearningSequence.objects.all().delete()
Circle.objects.all().delete()
Topic.objects.all().delete()
LearningPath.objects.all().delete()