Saturday, July 24, 2021

I worked on #3301. While generating service reports was almost done and is probably just a question of configuration, the new feature will be to have Lino Noi automatically generate yearly (or monthly) invoices for membership fees. Something very subtle is missing there, or just not well documented. I will now commit a set of changes that are work in process. I kind of get prepared for the big coup.

Changes for now:

Changed the label for StartInvoicing and subclasses Create invoices to Generate invoices.

New plugin attribute Plugin.order_model to generalize what Lino Tera, Lino Voga and Lino Presto did until now in three plugin extensions, which were suspiciously similar. The invoicing plugins in voga, tera and presto are no longer used.

New plugin attribute Plugin.three_demo_areas to formulate the only difference between the plugin extensions: In Voga the demo fixture creates only one invoicing area while other applications have three invoicing areas.

I removed two unused method definitions get_invoiceable_amount() in tera and voga.

I optimized some translations, which had an unexpected side effect: quite some time ago I moved the roger variant of voga from voga to book. And only now, after having done inv mm in voga, the translations of the texts in this variant disappeared.

TODO:

  • replace get_invoiceable_product() altogether by get_invoicing_tariff()?

  • rename “flatrate” (the verbose name for Tariff) to “invoicing rule”.

  • implement the new InvoiceGenerator methods on orders.Order