Skip to content

Commit

Permalink
[FIX] l10n_it_corrispettivi_sale: Create corrispettivo even if invoic…
Browse files Browse the repository at this point in the history
…e is created by advance payment
  • Loading branch information
monen17 committed Feb 21, 2019
1 parent 3e615c6 commit 99f1d27
Show file tree
Hide file tree
Showing 4 changed files with 40 additions and 1 deletion.
2 changes: 1 addition & 1 deletion l10n_it_corrispettivi_sale/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

from . import models

from . import wizards
20 changes: 20 additions & 0 deletions l10n_it_corrispettivi_sale/tests/test_corrispettivi_sale.py
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,26 @@ def test_corrispettivi_sale_invoice(self):
invoice = self.invoice_model.browse(invoice_id)
self.assertTrue(invoice.corrispettivo)

def test_corrispettivi_sale_invoice_advance(self):
"""
Test receipt creation for a sale order having flag corrispettivi
when there is an advance payment.
"""
self.create_corr_journal()
sale = self.create_corrispettivi_sale()
self.assertTrue(sale.action_confirm())
payment = self.env['sale.advance.payment.inv'] \
.with_context(active_ids=sale.ids).create({
'advance_payment_method': 'percentage',
'amount': 5,
'deposit_account_id': self.account_receivable.id
})
payment.create_invoices()
invoice_ids_list = sale.mapped('invoice_ids')
self.assertTrue(len(invoice_ids_list))
for invoice_id in invoice_ids_list:
self.assertTrue(invoice_id.corrispettivo)

def test_no_corrispettivi_sale_invoice(self):
"""
Test invoice creation for a sale order not having flag corrispettivi.
Expand Down
4 changes: 4 additions & 0 deletions l10n_it_corrispettivi_sale/wizards/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Copyright 2019 Simone Rubino
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

from . import sale_advance_payment_inv
15 changes: 15 additions & 0 deletions l10n_it_corrispettivi_sale/wizards/sale_advance_payment_inv.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Copyright 2019 Simone Rubino
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

from odoo import api, models


class SaleAdvancePaymentInv(models.TransientModel):
_inherit = 'sale.advance.payment.inv'

@api.multi
def _create_invoice(self, order, so_line, amount):
invoice = super()._create_invoice(order, so_line, amount)
if order.corrispettivi:
invoice.journal_id = self.env['account.journal'].get_corr_journal()
return invoice

0 comments on commit 99f1d27

Please sign in to comment.