25 lines
1.4 KiB
Python
25 lines
1.4 KiB
Python
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
|
from odoo import models
|
|
|
|
|
|
class AccountMove(models.Model):
|
|
_inherit = "account.move"
|
|
|
|
def _compute_l10n_latam_document_type(self):
|
|
""" Override for debit notes. This sets the same document type as the one on the origin. Cannot
|
|
override the defaults in the account.move.debit wizard because l10n_latam_invoice_document explicitly
|
|
calls _compute_l10n_latam_document_type() after the debit note is created. """
|
|
br_debit_notes = self.filtered(lambda m: m.state == "draft" and m.country_code == "BR" and m.debit_origin_id.l10n_latam_document_type_id)
|
|
for move in br_debit_notes:
|
|
move.l10n_latam_document_type_id = move.debit_origin_id.l10n_latam_document_type_id
|
|
|
|
return super(AccountMove, self - br_debit_notes)._compute_l10n_latam_document_type()
|
|
|
|
def _get_last_sequence_domain(self, relaxed=False):
|
|
""" Override to give sequence names in the same journal their own, independent numbering. """
|
|
where_string, param = super()._get_last_sequence_domain(relaxed)
|
|
if self.country_code == "BR" and self.l10n_latam_use_documents:
|
|
where_string += " AND l10n_latam_document_type_id = %(l10n_latam_document_type_id)s "
|
|
param["l10n_latam_document_type_id"] = self.l10n_latam_document_type_id.id or 0
|
|
return where_string, param
|