Skip to content

Commit

Permalink
[FIX] l10n_be_cooperator_national_number: Fix the tests
Browse files Browse the repository at this point in the history
  • Loading branch information
carmenbianca committed Jul 17, 2023
1 parent 10afd2e commit f45e99e
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 27 deletions.
3 changes: 2 additions & 1 deletion l10n_be_cooperator_national_number/models/__init__.py
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
from . import subscription_request
from . import company
from . import subscription_request
from . import res_partner
29 changes: 29 additions & 0 deletions l10n_be_cooperator_national_number/models/res_partner.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# SPDX-FileCopyrightText: 2023 Coop IT Easy SC
#
# SPDX-License-Identifier: AGPL-3.0-or-later

from odoo import api, models


class ResPartner(models.Model):
_inherit = "res.partner"

@api.model
def create(self, vals):
national_number = vals.pop("national_number", None)
partner = super().create(vals)
partner.create_national_number(national_number)
return partner

def create_national_number(self, national_number):
self.ensure_one()
if national_number:
values = {
"name": national_number,
"category_id": self.env.ref(
"l10n_be_national_number.l10n_be_national_number_category" # noqa
).id,
"partner_id": self.id,
}
result = self.env["res.partner.id_number"].create(values)
return result
26 changes: 0 additions & 26 deletions l10n_be_cooperator_national_number/models/subscription_request.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,31 +40,9 @@ def validate_subscription_request(self):
raise UserError(_("National Number is required."))
super().validate_subscription_request()

def create_national_number(self, partner):
self.ensure_one()
if not self.is_company:
if not self.national_number and self.require_national_number:
raise ValueError(_("National Number is required."))
elif not self.national_number:
# Do nothing if no national number is provided, but none is
# required.
pass
else:
values = {
"name": self.national_number,
"category_id": self.env.ref(
"l10n_be_national_number.l10n_be_national_number_category" # noqa
).id,
"partner_id": partner.id,
}
self.env["res.partner.id_number"].create(values)
return partner

def create_coop_partner(self):
self.ensure_one()
partner = super().create_coop_partner()
if self.display_national_number:
self.create_national_number(partner)
return partner

def get_representative_vals(self):
Expand All @@ -79,7 +57,3 @@ def get_partner_vals(self):
def get_person_info(self, partner):
super().get_person_info(partner)
self.national_number = self.get_national_number_from_partner(partner)

def update_partner_info(self):
self.create_national_number(self.partner_id)
super().update_partner_info()

0 comments on commit f45e99e

Please sign in to comment.