Skip to content

Commit

Permalink
[ADD] res partner match or create
Browse files Browse the repository at this point in the history
  • Loading branch information
felipezago committed Jun 26, 2023
1 parent d9658e6 commit 62d152c
Showing 1 changed file with 18 additions and 0 deletions.
18 changes: 18 additions & 0 deletions l10n_br_nfe/models/res_partner.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@

from odoo import api, fields

from odoo.addons.l10n_br_fiscal.tools.misc import format_cnpj_cpf
from odoo.addons.spec_driven_model.models import spec_models

_logger = logging.getLogger(__name__)
Expand Down Expand Up @@ -257,3 +258,20 @@ def _export_field(self, xsd_field, class_obj, member_spec, export_value=None):
return self.vat or self.cnpj_cpf or self.rg or "EXTERIOR"

return super()._export_field(xsd_field, class_obj, member_spec, export_value)

@api.model
def match_or_create_m2o(self, rec_dict, parent_dict, model=None):
domain_cnpj = []
if parent_dict.get("nfe40_CNPJ"):
rec_dict["cnpj_cpf"] = parent_dict["nfe40_CNPJ"]
domain_cnpj = [
"|",
("cnpj_cpf", "=", rec_dict["cnpj_cpf"]),
("cnpj_cpf", "=", format_cnpj_cpf(rec_dict["cnpj_cpf"])),
]

match = self.search(domain_cnpj, limit=1)
if match:
return match.id

return self.with_context(parent_dict=parent_dict).create(rec_dict).id

0 comments on commit 62d152c

Please sign in to comment.