You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Sep 23, 2024. It is now read-only.
Wir benötigen eine Liste/Statistik, in der für jede Ortsgruppe die Anzahl der normal und ermäßigt zahlenden Mitglieder steht. Ermäßigte Mitglieder werden wie folgt festgestellt:
Wenn einem Mitglied mehr als ein Geschwisterkind zugeordnet ist, werden alle Geschwister nach Alter sortiert. Die beiden älteren zahlen den normalen Beitrag, alle weiteren Geschwister zahlen den ermäßigten Beitrag, sofern sie (zum Stichtag) unter 18 Jahren alt sind.
Die Anzahl der normal zahlenden Mitglieder ist daher die Summer aller Mitglieder minus die Anzahl der ermäßigten.
Den Stichtag der Mitgliedermeldung müssen wir in der kommenden Vorstandssitzung noch festlegen. Voraussichtlich wird es der 31.08. Dieser müsste dann jedoch nur für die Altersberechnung bei ermäßigten Mitgliedern genutzt werden. Es soll dazu kein aktives Meldeverfahren in hitobito ähnlich PBS geben, sondern ein Agreement mit den Ortsgruppen zum Rechnungsstichtag der Meldung.
Diese Liste kann dann gerne auch als csv Datei exportiert werden und muss nicht als View verfügbar sein.
Offene Fragen / Antworten
Werden Geschwister über "Wohnt im Haushalt mit" oder wie bei der pbs über "Geschwister" gelöst?
Berechnet immer am 31.8. (fix hinterlegt) des aktuellen Jahres durchführen und so in der DB hinterlegen.
Historie ist nicht eine zwingende Anforderung
Mockup
Ergänzen des Export export_subgroups.csv soll folgende Spalten enthalten:
Name Ortsgruppe
Mitglieder normal
Mitglieder ermäßigt
Zahlen nur bei Layern berechnen. Zellen bei Untergruppen leer lassen.
Tech-Spec
Gruppen erweitern, um letzte Stichtagsstatistik zu speichern:
members_normal int
members_discounted int
Daten auf Gruppe erstmal nicht direkt anzeigen
Untergruppen-Export erweitern
Name Ortsgruppe
Mitglieder normal
Mitglieder ermäßigt
Zahlen nur bei Layern berechnen. Zellen bei Untergruppen leer lassen.
Domain-Klasse um Mitgliederstatistik zu berechnen
Groups::MemberPaymentStatus.new(layer).update
Es werden direkt die Gruppendaten aktualisiert.
Nur Layer-Gruppen berechnen, sonst ein NOOP
Alle Mitglieder innerhalb des Layers betrachten
Wenn einem Mitglied mehr als ein Geschwisterkind zugeordnet ist, werden alle Geschwister nach Alter sortiert. Die beiden älteren zahlen den normalen Beitrag, alle weiteren Geschwister zahlen den ermäßigten Beitrag, sofern sie (zum Stichtag) unter 18 Jahren alt sind.
Anders gesagt: das dritte und folgende Geschwister sind ermäßigt, wenn sie minderjährig sind.
Geschwister können auch in einer anderen Gruppe sein.
Stichtag für Altersberechnung ist der letzte vergangene (oder heutige) 31.08. Groups::MemberPaymentStatus::AGE_CUTOFF_DATE. Anders gesagt, es ist nie ein 31.08. in der Zukunft.
Delayed::Job, der (vorerst) jährlich am 31.08. läuft (unabhängig von AGE_CUTOFF_DATE, zufällig gleich).
Anforderung von Manuel:
Offene Fragen / Antworten
Mockup
Ergänzen des Export
export_subgroups.csvsoll folgende Spalten enthalten:Zahlen nur bei Layern berechnen. Zellen bei Untergruppen leer lassen.
Tech-Spec
members_normal intmembers_discounted intGroups::MemberPaymentStatus.new(layer).updateGroups::MemberPaymentStatus::AGE_CUTOFF_DATE. Anders gesagt, es ist nie ein 31.08. in der Zukunft.Fragen