Commit Graph

60 Commits (69a4560ea44b6a1ae0b929e8615a0938ba3413cb)

Author SHA1 Message Date
Christian Merten 69a4560ea4
refactor(finance/models): replace `submitted` and `confirmed` by a `status` field (#3)
This is in preparation for a [new statement admin
view](#179).
2 months ago
Christian Merten 068dfaa6c8
chore(finance/admin): mark unreachable code as no cover 4 months ago
Christian Merten adc23bc7e0
fix(*): various bugs discovered by tests 4 months ago
Christian Merten 5efdbcb63c
chore(*): add various tests 4 months ago
Christian Merten 3003bbe67f
fix(finance/admin): pass participant_count only once 4 months ago
Christian Merten 7aea91cb31
chore(*): remove stub files 4 months ago
Christian Merten b613dc70c2
chore(finance/tests): add rules tests 4 months ago
Christian Merten 355aad61c2
chore(finance/tests): add more admin tests 4 months ago
Christian Merten 396ea6f796
chore(finance/tests): reorganise and add admin tests 4 months ago
Christian Merten a9b26e529b
feat(*): add more tests 4 months ago
marius.klein a8d4625719 feat(finance/tests): tests for new rules (#155)
Also makes some checks safe.

Reviewed-on: #155
Reviewed-by: Christian Merten <christian@merten.dev>
Co-authored-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
Co-committed-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
5 months ago
Christian Merten 0eedc3ecf9
feat(finance): send statement summary to finance office 8 months ago
marius.klein 3250dc7089 feat(finance): org fee for old participants (#149)
Allow deducting a configurable organisational fee for participants older than 27 from subsidies. This is calculated per day and old participant.

Reviewed-on: #149
Reviewed-by: Christian Merten <christian@merten.dev>
Co-authored-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
Co-committed-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
8 months ago
marius.klein 05f924cdef fix(members/excursion): fix seminar day calculation and add verbosity in finance overview (#153)
Reviewed-on: #153
Reviewed-by: Christian Merten <christian@merten.dev>
Co-authored-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
Co-committed-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
8 months ago
marius.klein f213e11772 feat(finance): creation of receipts for confirmed statements and payment of LJP contributions (#150)
Confirmed statements now come with automatically generated PDF receipts used for documenting all issued payments.

This PR also adds generation of transactions for LJP contributions and their validation.

closes #92

Co-authored-by: mariusrklein <47218379+mariusrklein@users.noreply.github.com>
Reviewed-on: #150
Reviewed-by: Christian Merten <christian@merten.dev>
Co-authored-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
Co-committed-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
8 months ago
Christian Merten 33ab4e481d
fix(finance/admin): check existence and permission in finance admin views 8 months ago
Christian Merten 06db761021
locale: fix translations 11 months ago
marius.klein cfcde2da3a finance/statement: make `subsidy_to` and `allowance_to` optional (#112)
closes #108

- fields for receivers of allowance `a` and subsidies `s` are not compulsory anymore. If receivers are given, `a` and `s` are payed out for them. `s` can only be payed out in total, disregarding the number of receivers given for `a`.
- In the overview pages (activity and statement), we are now distinguishing between theoretical `a` + `s` and what has been payed out practically. If no receiver was given for either things, it is made clear that nothing is payed out. All combinations of `0`, ..., `n` payed allowances (`n` being number of approved participating YLs) and `0, `1` payed subsidies are possible.
- transaction generation logic adapted accordingly

Reviewed-on: #112
Reviewed-by: Christian Merten <christian@merten.dev>
Co-authored-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
Co-committed-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
11 months ago
Christian Merten 9610503caa
finance/tests: add tests for models 11 months ago
marius.klein e7dcbb47ab finance/statement: show IBAN validity in submit views (#104)
* Add new attribute `iban_valid` to `Member`.
* Submit pages of regular expenses and activity expenses now include an overview which people with expenses have a valid IBAN.
* Add a note that IBAN validity should be checked manually before submitting.

Right now, no technical barriers are in place that prevent missing/wrong IBANs when a statement is submitted. This is intentional to preserve maximal flexibility.

In a follow-up PR, one could add custom warning messages on top of page when some IBANs are invalid.

Reviewed-on: #104
Reviewed-by: Christian Merten <christian@merten.dev>
Co-authored-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
Co-committed-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
11 months ago
Christian Merten 0960646d1f
finance/tests: adapt to new logic with allowance_to and subsidy_to 11 months ago
Christian Merten afdbb56d81
finance: don't include subsidies in theoretic total
Subsidies paid for night and travel costs are expected to be listed
in the bills of the associated statement. Hence, they should not be
counted a second time in the theoretic total. This affects LJP
and SJR applications.
11 months ago
Christian Merten 2e6bfc9b75
finance/statement: make allowance_to optional
If an excursion has zero admissable youth leaders, the statement and hence the excursion
currently can't be saved, because the `allowance_to` field has to be non-empty, but
the number of entries has to be zero. This commit hence makes the field optional.
11 months ago
Christian Merten 5d0aa18dde
finance: adapt to allowance_to and subsidy_to
Use the new `allowance_to` and `subsidy_to` fields in statement validation. The
night and travel costs have to be transferred to the person listed as `subsidy_to`,
the allowance has to be paid to the persons listed in `allowance_to`.
11 months ago
Christian Merten 8b932461b7
finance/statement: add selection fields for allowance and subsidies
In the statement tab on excursions, add two new fields to select to which
youth leaders the allowance and subsidies should be paid. The fields
are checked for validity based on the number of approved youth leaders.

Also add a new field on excursions to allow for additional approved youth
leaders.

The new fields are not yet used in the statement confirmation process.
11 months ago
Christian Merten 1bd2895415
translations: remove line counts 12 months ago
marius.klein 3b46695b49 finance/admin: validate IBAN and show EPC-QR code for transactions (#94)
1. IBAN validation in member admin.
2. In the transaction overview, for every transaction an EPC-QR code for banking apps is generated and displayed. The (necessary) BIC field is automatically derived from the IBAN. This closes #63.

Both steps use the python library schwifty.

Reviewed-on: #94
Reviewed-by: Christian Merten <christian@merten.dev>
Co-authored-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
Co-committed-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
12 months ago
Christian Merten 19eb0953d5
tests: fix, generate html coverage report 12 months ago
Christian Merten a749aca7a4
finance: allow pdfs in proof field 12 months ago
Christian Merten ec404c7435
finance: alter field 1 year ago
Christian Merten 31a7f977dd
finance/models: fix overview for independent statements 1 year ago
Christian Merten 92e77e8b3c
finance: fix permissions 1 year ago
Christian Merten 0a1d85e924
finance: fix permissions on submitted statement 1 year ago
Christian Merten 8c71eb744f
finance/translation: fix 1 year ago
Christian Merten dd7af67b34
translations: replace more : with * 1 year ago
Christian Merten 17cae5c009
translations: use gender star 1 year ago
Christian Merten 7d93a4be0a
members/excursion: add V32 and improve texts 1 year ago
Christian Merten eaccc5a5ef
members/excursion: group bills in seminar report 1 year ago
Christian Merten 302565d5f5
finance/bill: rename 1 year ago
Christian Merten 79b5389107
members/excursion: add finance overview 1 year ago
Christian Merten 67e019073a
finance: fix allowance per day and rounding 1 year ago
Christian Merten 8a58a43bcd
finance: catch if bills have no set paid_by field 1 year ago
Christian Merten b62464280e
members: Freizeit -> Ausfahrt 1 year ago
Christian Merten e88a2f2045
finance: update translations 1 year ago
Christian Merten 6ea7d3d8a1
update translations 1 year ago
Christian Merten 0220ed36fd
finance/admin: add statement unconfirm button 1 year ago
Christian Merten 7c7c67e496
finance/admin: show bills and transactions on confirmed statements 1 year ago
Christian Merten 1f857e4fa3
finance/admin: allow change on submitted statements
gitea/kompass/pipeline/head There was a failure building this commit Details
1 year ago
Christian Merten bf75212d26
finance: add tests for model mechanics, fix bug in transaction issue calculation 3 years ago
Christian Merten 7255190153
multiple: use object level permissions 3 years ago