From edb014956300163d39c53d41f5053f72f448d8af Mon Sep 17 00:00:00 2001 From: Parthiv Patel Date: Fri, 28 Oct 2022 08:35:51 +0000 Subject: [PATCH] [PATCH] Upstream patch - 28102022 --- addons/account/models/account_journal.py | 4 +- .../models/account_journal_dashboard.py | 4 +- addons/account/models/account_move.py | 2 +- .../tests/test_account_journal_dashboard.py | 103 ++++++++++ .../data/account_tax_template_data.xml | 176 +++++++++++------- .../l10n_it_edi/models/account_edi_format.py | 7 +- addons/mrp_account/models/product.py | 2 +- addons/mrp_account/tests/test_bom_price.py | 31 +-- addons/purchase_stock/models/purchase.py | 2 +- .../sale_mrp/tests/test_sale_mrp_kit_bom.py | 60 ++++++ addons/sale_stock/models/sale_order.py | 2 +- .../stock_account/models/stock_move_line.py | 4 +- .../tests/test_stockvaluation.py | 33 ++++ addons/web_editor/static/src/js/editor/rte.js | 1 + .../static/src/js/editor/rte.summernote.js | 19 ++ addons/website/static/src/js/menu/content.js | 6 +- .../website/static/src/xml/website.editor.xml | 1 + .../website/views/snippets/s_company_team.xml | 7 + addons/website_blog/controllers/main.py | 22 ++- .../views/website_blog_components.xml | 2 +- addons/website_form/controllers/main.py | 6 +- 21 files changed, 390 insertions(+), 104 deletions(-) diff --git a/addons/account/models/account_journal.py b/addons/account/models/account_journal.py index 5bd70566e3..3efe82d7a8 100644 --- a/addons/account/models/account_journal.py +++ b/addons/account/models/account_journal.py @@ -816,5 +816,5 @@ class AccountJournal(models.Model): ''' self.ensure_one() last_statement_domain = (domain or []) + [('journal_id', '=', self.id)] - last_st_line = self.env['account.bank.statement.line'].search(last_statement_domain, order='date desc, id desc', limit=1) - return last_st_line.statement_id + last_statement = self.env['account.bank.statement'].search(last_statement_domain, order='date desc, id desc', limit=1) + return last_statement diff --git a/addons/account/models/account_journal_dashboard.py b/addons/account/models/account_journal_dashboard.py index 28a5c7a09f..aec9774acb 100644 --- a/addons/account/models/account_journal_dashboard.py +++ b/addons/account/models/account_journal_dashboard.py @@ -99,7 +99,7 @@ class account_journal(models.Model): locale = get_lang(self.env).code #starting point of the graph is the last statement - last_stmt = self._get_last_bank_statement(domain=[('move_id.state', '=', 'posted')]) + last_stmt = self._get_last_bank_statement(domain=[('state', 'in', ['posted', 'confirm'])]) last_balance = last_stmt and last_stmt.balance_end_real or 0 data.append(build_graph_data(today, last_balance)) @@ -233,7 +233,7 @@ class account_journal(models.Model): sum_draft = sum_waiting = sum_late = 0.0 if self.type in ('bank', 'cash'): last_statement = self._get_last_bank_statement( - domain=[('move_id.state', '=', 'posted')]) + domain=[('state', 'in', ['posted', 'confirm'])]) last_balance = last_statement.balance_end has_at_least_one_statement = bool(last_statement) bank_account_balance, nb_lines_bank_account_balance = self._get_journal_bank_account_balance( diff --git a/addons/account/models/account_move.py b/addons/account/models/account_move.py index 048d36db20..3e25df9127 100644 --- a/addons/account/models/account_move.py +++ b/addons/account/models/account_move.py @@ -3205,7 +3205,7 @@ class AccountMoveLine(models.Model): sequence = fields.Integer(default=10) name = fields.Char(string='Label', tracking=True) quantity = fields.Float(string='Quantity', - default=1.0, digits='Product Unit of Measure', + default=lambda self: 0 if self._context.get('default_display_type') else 1.0, digits='Product Unit of Measure', help="The optional quantity expressed by this line, eg: number of product sold. " "The quantity is not a legal requirement but is very useful for some reports.") price_unit = fields.Float(string='Unit Price', digits='Product Price') diff --git a/addons/account/tests/test_account_journal_dashboard.py b/addons/account/tests/test_account_journal_dashboard.py index 82d74dd757..920af8d127 100644 --- a/addons/account/tests/test_account_journal_dashboard.py +++ b/addons/account/tests/test_account_journal_dashboard.py @@ -92,3 +92,106 @@ class TestAccountJournalDashboard(AccountTestInvoicingCommon): dashboard_data = journal.get_journal_dashboard_datas() self.assertEqual(dashboard_data['number_late'], 2) self.assertIn('78.42', dashboard_data['sum_late']) + + def test_last_statement(self): + bank_journal = self.company_data['default_journal_bank'] + + invoices = self.env['account.move'].create([ + { + 'move_type': 'out_invoice', + 'partner_id': self.partner_a.id, + 'invoice_date': '2022-05-17', + 'date': '2022-05-17', + 'invoice_line_ids': [(0, 0, { + 'product_id': self.product_a.id, + 'quantity': 1.0, + 'name': 'product test 1', + 'price_unit': 500.0, + })] + }, + { + 'move_type': 'out_invoice', + 'partner_id': self.partner_a.id, + 'invoice_date': '2022-05-18', + 'date': '2022-05-18', + 'invoice_line_ids': [(0, 0, { + 'product_id': self.product_a.id, + 'quantity': 1.0, + 'name': 'product test 1', + 'price_unit': 700.0, + })] + }, + { + 'move_type': 'out_invoice', + 'partner_id': self.partner_a.id, + 'invoice_date': '2022-05-17', + 'date': '2022-05-17', + 'invoice_line_ids': [(0, 0, { + 'product_id': self.product_a.id, + 'quantity': 1.0, + 'name': 'product test 1', + 'price_unit': 900.0, + })] + }, + ]) + + invoices.action_post() + + payments = self.env['account.payment'].create([ + { + 'amount': 500.0, + 'payment_type': 'inbound', + 'partner_type': 'customer', + 'partner_id': self.partner_a.id, + 'journal_id': bank_journal.id, + 'date': '2022-05-17', + }, + { + 'amount': 700.0, + 'payment_type': 'inbound', + 'partner_type': 'customer', + 'partner_id': self.partner_a.id, + 'journal_id': bank_journal.id, + 'date': '2022-05-18', + }, + { + 'amount': 500.0, + 'payment_type': 'inbound', + 'partner_type': 'customer', + 'partner_id': self.partner_a.id, + 'journal_id': bank_journal.id, + 'date': '2022-05-17', + }, + ]) + payments.action_post() + + for invoice, payment in zip(invoices, payments): + (invoice + payment.move_id).line_ids\ + .filtered(lambda line: line.account_internal_type == 'receivable')\ + .reconcile() + + # Create statements in bank journal. + statements = self.env['account.bank.statement'].create([ + { + 'name': 'BNK1_1', + 'date': '2022-05-17', + 'journal_id': bank_journal.id, + 'line_ids': [ + (0, 0, {'date': '2022-05-17', 'payment_ref': invoices[0].name, 'amount': 500.0}), + (0, 0, {'date': '2022-05-18', 'payment_ref': invoices[1].name, 'amount': 700.0}), + ], + 'balance_end_real': 1200.0, + }, + { + 'name': 'BNK1_2', + 'date': '2022-05-17', + 'journal_id': bank_journal.id, + 'line_ids': [(0, 0, {'date': '2022-05-17', 'payment_ref': invoices[2].name, 'amount': 900.0})], + 'balance_end_real': 2100.0, + } + ]) + + statements.button_post() + + dashboard = bank_journal.get_journal_dashboard_datas() + self.assertTrue(dashboard['last_balance'] == dashboard['account_balance']) diff --git a/addons/l10n_fi/data/account_tax_template_data.xml b/addons/l10n_fi/data/account_tax_template_data.xml index 9a2ddadb48..b8fad43011 100644 --- a/addons/l10n_fi/data/account_tax_template_data.xml +++ b/addons/l10n_fi/data/account_tax_template_data.xml @@ -5,8 +5,8 @@ - VAT 24% - VAT 24% + 24% + 24% 24.0 sale @@ -38,11 +38,12 @@ - VAT 14% - VAT 14% + 14% + 14% 14.0 sale + percent - VAT 10% - VAT 10% + 10% + 10% 10.0 sale + percent - VAT 0% - VAT 0% + 0% + 0% 0.0 sale @@ -139,8 +141,8 @@ - VAT 24% Service - VAT 24% Service + 24% S + 24% 24.0 sale @@ -173,11 +175,12 @@ - VAT 14% Service - VAT 14% Service + 14% S + 14% 14.0 sale + percent - VAT 10% Service - VAT 10% Service + 10% S + 10% 10.0 sale + percent - Purchase 24% - Purchase 24% + 24% + 24% 24.0 purchase @@ -277,11 +281,12 @@ - Purchase 14% - Purchase 14% + 14% + 14% 14.0 purchase + percent - Purchase 10% - Purchase 10% + 10% + 10% 10.0 purchase + percent - Purchase 24% Service - Purchase 24% Service + 24% S + 24% 24.0 purchase @@ -378,11 +384,12 @@ - Purchase 14% Service - Purchase 14% Service + 14% S + 14% 14.0 purchase + percent - Purchase 10% Service - Purchase 10% Service + 10% S + 10% 10.0 purchase + percent - Purchase 24% (brutto) - Purchase 24% (brutto) + 24% incl + 24% incl + + 24.0 purchase + percent - Purchase 14% (brutto) - Purchase 14% (brutto) + 14% incl + 14% incl + + 14.0 purchase + percent - Purchase 10% (brutto) - Purchase 10% (brutto) + 10% incl + 10% incl + + 10.0 purchase + percent - Purchase 0% - Purchase 0% + 0% + 0% 0.0 purchase @@ -560,8 +577,8 @@ - VAT 0% EU Goods - VAT 0% EU Goods + 0% EU G + 0% 0.0 sale @@ -593,8 +610,8 @@ - VAT 0% EU Service - VAT 0% EU Service + 0% EU S + 0% 0.0 sale @@ -627,8 +644,8 @@ - Purchase 24% EU Goods - Purchase 24% EU Goods + 24% EU G + 24% 24.0 purchase @@ -672,11 +689,12 @@ - Purchase 14% EU Goods - Purchase 14% EU Goods + 14% EU + 14% 14.0 purchase + percent - Purchase 10% EU Goods - Purchase 10% EU Goods + 10% EU G + 10% 10.0 purchase + percent - Purchase 24% EU Service - Purchase 24% EU Service + 24% EU S + 24% 24.0 purchase @@ -809,11 +828,12 @@ - Purchase 14% EU Service - Purchase 14% EU Service + 14% EU S + 14% 14.0 purchase + percent - Purchase 10% EU Service - Purchase 10% EU Service + 10% EU S + 10% 10.0 purchase + percent - VAT 0% Triangulation - VAT 0% Triangulation + 0% ABC + 0% 0.0 sale + percent - Triangulation Purchase - Triangulation Purchase + ABC + ABC 0.0 purchase + percent - Construct 0% - Construct 0% + 0% Construct + 0% 0.0 sale + percent - Purchase 24% Construct - Purchase 24% Construct + 24% Construct + 24% 24.0 purchase + percent - Purchase 24% FI Construct - Purchase 24% FI Construct + 24% FI Construct + 24% 24.0 purchase + percent - Aland 0% - Aland 0% + 0% Aland + 0% 0.0 sale + percent - Purchase 24% Non EU Goods - Purchase 24% Non EU Goods + 24% EX G + 24% 24.0 purchase + percent - Purchase 14% Non EU Goods - Purchase 14% Non EU Goods + 14% EX G + 14% 14.0 purchase + percent - Purchase 10% Non EU Goods - Purchase 10% Non EU Goods + 10% EX G + 10% 10.0 purchase + percent - VAT 0% Export - VAT 0% Export + 0% EX + 0% EX 0.0 sale @@ -1281,11 +1311,12 @@ - Import Pay24 + 24% Import Pay 24% 24.0 purchase + percent - Import Deduct24 + 24% Import Deduct 24% 24.0 purchase + percent +

Adding a font requires a reload of the page. This will save all your changes.

diff --git a/addons/website/views/snippets/s_company_team.xml b/addons/website/views/snippets/s_company_team.xml index c473f8b485..dcf0dfb61f 100644 --- a/addons/website/views/snippets/s_company_team.xml +++ b/addons/website/views/snippets/s_company_team.xml @@ -1,6 +1,13 @@ +