-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
INVOICES: Parameter Sektion #472
Comments
@codez wer ist denn der Sektionsadmin? |
Jemand der die Layer Gruppe bearbeiten darf. Das kann wer direkt aus dem Layer sein oder darüber. |
@codez sehe ich es richtig das man diese Parameter auch auf einer Ortsgruppe setzen kann? |
@mtnstar @sykesonrocks Da kenne ich die SAC Strukturen zu wenig. Von der Gruppenstruktur in hitobito würde es gut gehen. Haben Ortsgruppen auch eigene Gebühren? Zählen in diesem Fall nur diese, und nicht diejenigen der übergeordneten Sektion? So wie inzwischen der Rechnungscode (#502) gebaut ist, müssten Ortsgruppen eigentlich eigene Parameter haben. Ansonsten bräuchte es da noch Anpassungen, damit Ortsgruppenmitglieder die Sektionsgebühren verrechnet erhalten. |
die Sektion Blüemlisalp hat ja die Ortsgruppe Ausserberg, dort sind laut SAC Webseite die gleichen Preise für die Mitgliedschaft. |
@mtnstar Die Preise auf Stufe Ortsgruppe müssen immer erfasst sein - dürfen nie leer sein. Diese gilt es als eigenständige Sektionen zu betrachten / zu fakturieren. Ortsgruppen derselben Sektion können unterschiedliche Preise ausweisen (ist meist der Fall, siehe z.B. CAS Diablerets, SAC Pilatus). |
Als Sektionsadmin möchte ich die Parameter für die Mitgliedsrechnungen verwalten können.
Siehe auch #471. Diese Parameter sind versioniert und können pro Kalendarjahr wechseln, müssen aber nicht.
Model
Der Einfachheit halber halten wir das Model flach in einer Tabelle
section_membership_configs
:group_id
(integer, not null, belongs_to, index)valid_from
(integer, not null, 4 digits, unique über group_id)Folgende Attribute sind alle Frankenbeträge und entsprechend decimal, 2 Nachkommastellen, not null:
Sektionsbeitrag, Einzelmitgliedschaft /
section_fee_adult
Sektionsbeitrag, Familienmitgliedschaft /
section_fee_family
Sektionsbeitrag, Jugendmitgliedschaft /
section_fee_youth
Eintrittsgebühren, Einzelmitgliedschaft /
entry_fee_adult
Eintrittsgebühren, Familienmitgliedschaft /
entry_fee_family
Eintrittsgebühren, Jugendmitgliedschaft /
entry_fee_youth
Abogebühr Sektionsbulletin, Einzelmitgliedschaft /bulletin_fee_adult
Abogebühr Sektionsbulletin, Familienmitgliedschaft /bulletin_fee_family
Abogebühr Sektionsbulletin, Jugendmitgliedschaft /bulletin_fee_youth
Porto Ausland Sektionsbulletin /
bulletin_postage_abroad
Reduktionsparameter:
Zentralverbandsgebührenerlass für Ehrenmitglieder /
sac_fee_exemption_for_honorary_members
(bool, not null, default false)Sektionsgebührenerlass für Ehrenmitglieder /
section_fee_exemption_for_honorary_members
(bool, not null, default false)Zentralverbandsgebührenerlass für Begünstigte /
sac_fee_exemption_for_benefited_members
(bool, not null, default false)Sektionsgebührenerlass für Begünstigte /
section_fee_exemption_for_benefited_members
(bool, not null, default false)Reduktionsbetrag Mitgliedsjahre/Alter /
reduction_amount
Reduktion ab Mitgliedsjahren /
reduction_required_membership_years
(integer, nullable)Reduktion ab Altersjahren /
reduction_required_age
(integer, nullable)View
Der Titel der Seite ist immer "Parameter für Mitgliedschaftsrechnungen". Die Seite wird als Sheet unterhalb der Gruppe angezeigt, so dass der Gruppenname weiterhin ersichtlich ist.
Navigation
Da die Parameter nur selten bearbeitet werden müssen, erfolgt die Navigation über das Dropdown des "Bearbeiten" Buttons einer Sektion. Dort gibt es einen neuen Eintrag "Parameter Mitgliedsrechnungen".
Formular
Die Felder sollen analog dem Mockup aus #471 angeordnet werden. Die Reduktionsparameter erscheinen in der oben definierten Reihenfolge.
Auswahl Jahr
Die Auswahl des Jahres erfolgt analog zu #471.
ToDo
The text was updated successfully, but these errors were encountered: