Zum Inhalt

Lerngruppen-Zusammenfassung

Übersichtskarten mit Teilnahmequote, Geschlechterverteilung, Sprache und sozioökonomischem Status einer Lerngruppe.

Genutzt von: Klassenleitung


Screenshot

Lerngruppen-Zusammenfassung


API-Aufruf

GET /groups/{id}/competence-levels?type=students

Warum dieser Endpunkt?

Der Parameter type=students sorgt dafür, dass die API eine Value-Group pro Schüler zurückliefert. Jede Schüler-Value-Group enthält neben der Kompetenzstufe auch die Kovariaten (Geschlecht, Sprache, SES). Aus diesen Einzeldaten berechnet die Komponente die Verteilungen.

Beispiel-Response

[
  {
    "name": "Lesen",
    "students": [
      {
        "id": "s1",
        "name": "Schüler A",
        "competenceLevel": { "nameShort": "III" },
        "covariates": [
          { "type": "gender", "value": "female" },
          { "type": "languageAtHome", "value": "german" },
          { "type": "ses", "value": "C" }
        ]
      }
    ]
  }
]

Relevante Felder:

  • students[].competenceLevel -- ob teilgenommen (gesetzt = ja, null = nein)
  • students[].covariates -- Geschlecht, Sprache, SES pro Schüler

Bestandteile der Komponente

Die Zusammenfassung besteht aus mehreren Karten:

Karte Zeigt Berechnung
Teilnehmende Anzahl angemeldeter Schüler Gesamtzahl der Schüler in der Response
Teilnahmequote Donut-Chart (teilgenommen / nicht teilgenommen) Anteil Schüler mit gesetzter competenceLevel
Geschlecht Donut-Chart (weiblich / männlich / divers) Häufigkeitsverteilung der Kovariate gender
Sprache Donut-Chart (deutsch / andere) Häufigkeitsverteilung der Kovariate languageAtHome
SES Donut-Chart mit A--E-Legende Häufigkeitsverteilung der SES-Kategorien (Kovariate ses)

SES-Kategorien

Kategorie Bedeutung Farbe
A sehr niedrig rot (#e74c3c)
B niedrig orange (#e67e22)
C mittel gelb (#f39c12)
D hoch grün (#27ae60)
E sehr hoch blau (#2980b9)

Die Kategorien sind eine projektinterne Konvention -- die API-Spec dokumentiert den Wertebereich noch nicht (siehe docs/api_proposals.md, Abschnitt 6).


Übernahme

Für dieses Element benötigen Sie:

  • Hauptkomponente: GroupSummaryComponent (Selektor: app-group-summary)
  • Unterkomponenten: DonutChartComponent, ParticipantsCardComponent
  • Input: studentCompetenceLevels -- das Array aus der API-Response
<app-group-summary [studentCompetenceLevels]="apiResponse" />