adessoSE/budgeteer

Make bill recipient specific reporting optional

tinne opened this issue · 0 comments

tinne commented

Budgeteer currently only exports valid Budget reports if a custom Contract field rechnungsempfaenger exists. Nonwithstanding the non-standard spelling (Rechnungsempfänger means bill recipient) it created partial sums over all contracts in a project that relate to the same bill recipient.

This messy feature (cf. #427) needs to be cleaned up and standardized. I propose the following approach:

A project gets a new toggle Recipient Specific Billing. If unselected, Bill Recipient is a new mandatory text field on the project level. Else, Bill Recipients are edited on a per-Contract basis. The per-Contract bill recipient shall be entered via a combo box, i.e., while being able to add a new Recipient, the editor shall also be able to select one of the existing Recipients of the project from a dropdown list.

The Bill Recipient of a Contract (or of its Project, if not contract-specific) shall take the role the custom field rechnungsempfaenger currently has.

For backward compatility reasons, in a project with a custom field rechnungsempfaenger, the project toggle Recipient Specific Billing shall be force true, and the contract specific bill recipient shall be taken from the rechnungsempfaenger custom field, while the Bill Recipient field of the Contract remains unvisible.