From e1502cae5303cddec00821dfc5174062f4dc1872 Mon Sep 17 00:00:00 2001 From: Frederik Jaeckel Date: Sun, 10 Mar 2024 22:21:00 +0100 Subject: [PATCH] add placeholder 'rate' --- locale/de.po | 8 ++++++-- locale/en.po | 8 ++++++-- planner.py | 12 +++++++++++- tests/planner.py | 7 ++++--- view/planner_form.xml | 2 +- 5 files changed, 28 insertions(+), 9 deletions(-) diff --git a/locale/de.po b/locale/de.po index 92cfe06..4cd94d0 100644 --- a/locale/de.po +++ b/locale/de.po @@ -107,8 +107,8 @@ msgid "Booking text" msgstr "Buchungstext" msgctxt "view:cashbook.planner:" -msgid "Available placeholders: ${date} ${month} ${year} ${amount} ${quantity}" -msgstr "verfügbare Platzhalter: ${date} ${month} ${year} ${amount} ${quantity}" +msgid "Available placeholders: ${date} ${month} ${year} ${amount} ${quantity} ${rate}" +msgstr "verfügbare Platzhalter: ${date} ${month} ${year} ${amount} ${quantity} ${rate}" msgctxt "view:cashbook.planner:" msgid "Cashbook lines" @@ -318,6 +318,10 @@ msgctxt "help:cashbook.planner,cashbook_lines:" msgid "This cash book lines was generated by the current scheduled booking." msgstr "Diese Kassenbuchzeilen wurden durch die aktuelle geplante Buchung generiert." +msgctxt "field:cashbook.planner,party:" +msgid "Party" +msgstr "Partei" + ############################ # cashbook.planner.nextrun # diff --git a/locale/en.po b/locale/en.po index a556b20..f4994ad 100644 --- a/locale/en.po +++ b/locale/en.po @@ -83,8 +83,8 @@ msgid "Booking text" msgstr "Booking text" msgctxt "view:cashbook.planner:" -msgid "Available placeholders: ${date} ${month} ${year} ${amount} ${quantity}" -msgstr "Available placeholders: ${date} ${month} ${year} ${amount} ${quantity}" +msgid "Available placeholders: ${date} ${month} ${year} ${amount} ${quantity} ${rate}" +msgstr "Available placeholders: ${date} ${month} ${year} ${amount} ${quantity} ${rate}" msgctxt "view:cashbook.planner:" msgid "Cashbook lines" @@ -294,6 +294,10 @@ msgctxt "help:cashbook.planner,cashbook_lines:" msgid "This cash book lines was generated by the current scheduled booking." msgstr "This cash book lines was generated by the current scheduled booking." +msgctxt "field:cashbook.planner,party:" +msgid "Party" +msgstr "Party" + msgctxt "model:cashbook.planner.nextrun,name:" msgid "Next Execution Date" msgstr "Next Execution Date" diff --git a/planner.py b/planner.py index eb07b1e..7f701dc 100644 --- a/planner.py +++ b/planner.py @@ -515,6 +515,15 @@ class ScheduledBooking(DeactivableMixin, ModelSQL, ModelView): quantity_txt = Report.format_number( quantity, lang=None, digits=uom_digits) + asset_rate = '-' + if quantity and amount is not None: + asset_rate = '%(rate)s %(currency)s/%(uom)s' % { + 'rate': Report.format_number( + amount / quantity, lang=None, + digits=to_book.currency.digits), + 'currency': to_book.currency.symbol, + 'uom': to_book.quantity_uom.symbol} + return Template(linedata.get('description')).safe_substitute({ 'date': Report.format_date(line_date, lang=None), 'month': line_date.month, @@ -522,7 +531,8 @@ class ScheduledBooking(DeactivableMixin, ModelSQL, ModelView): 'amount': Report.format_currency( amount, lang=None, currency=from_book.currency) if (amount is not None) and from_book else '-', - 'quantity': quantity_txt}) + 'quantity': quantity_txt, + 'rate': asset_rate}) @classmethod def update_next_occurence(cls, records, query_date=None): diff --git a/tests/planner.py b/tests/planner.py index 9eaa7b2..eb3389f 100644 --- a/tests/planner.py +++ b/tests/planner.py @@ -364,12 +364,13 @@ class PlannerTestCase(object): asset_book = self.prep_planner_asset_book() self.assertEqual(Planner.fill_placeholder({ 'date': date(2022, 5, 2), - 'amount': Decimal('12.4567'), + 'amount': Decimal('126.4567'), 'quantity': Decimal('32.4423'), 'cashbook': asset_book.id, + 'booktransf': asset_book.id, 'description': '- ${amount} - ${date} - ${month} - ' + - '${year} - ${quantity}'}), - '- usd12.46 - 05/02/2022 - 5 - 2022 - 32.4423\xa0u') + '${year} - ${quantity} - ${rate}'}), + '- usd126.46 - 05/02/2022 - 5 - 2022 - 32.4423\xa0u - 3.90 usd/u') @with_transaction() def test_planner_cronjobs_booking_with_category(self): diff --git a/view/planner_form.xml b/view/planner_form.xml index 95e04e8..9baf580 100644 --- a/view/planner_form.xml +++ b/view/planner_form.xml @@ -59,7 +59,7 @@ full copyright notices and license terms. -->