Skip to content

Commit ccd906c

Browse files
committed
[IMP] l10n_br_cnpj_search: adapt to use l10n_br_fiscal.legal.nature object
1 parent 555b2d1 commit ccd906c

File tree

11 files changed

+36
-37
lines changed

11 files changed

+36
-37
lines changed

l10n_br_cnpj_search/models/__init__.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,4 @@
33
from . import l10n_br_base_party_mixin
44
from . import res_config_settings
55
from . import cnpj_webservice
6-
from . import res_partner
76
from . import res_company

l10n_br_cnpj_search/models/cnpj_webservice.py

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -116,16 +116,27 @@ def _validate(self, response):
116116
if response.status_code != 200:
117117
raise ValidationError(_("%s") % response.reason)
118118

119+
@api.model
120+
def _get_legal_nature(self, raw_code):
121+
code = punctuation_rm(raw_code)
122+
legal_nature_id = False
123+
if code:
124+
legal_nature_id = (
125+
self.env["l10n_br_fiscal.legal.nature"]
126+
.search([("code_unmasked", "=", code)])
127+
.id
128+
)
129+
return legal_nature_id
130+
119131
@api.model
120132
def _get_cnae(self, raw_code):
121133
code = punctuation_rm(raw_code)
122134
cnae_id = False
123135

124136
if code:
125-
formatted_code = code[0:4] + "-" + code[4] + "/" + code[5:]
126137
cnae_id = (
127138
self.env["l10n_br_fiscal.cnae"]
128-
.search([("code", "=", formatted_code)])
139+
.search([("code_unmasked", "=", code)])
129140
.id
130141
)
131142

@@ -168,7 +179,7 @@ def _receitaws_import_data(self, data):
168179
"district": self.get_data(data, "bairro", title=True),
169180
"street_number": self.get_data(data, "numero"),
170181
"zip": self.get_data(data, "cep"),
171-
"legal_nature": self.get_data(data, "natureza_juridica"),
182+
"legal_nature_id": self._receitaws_get_legal_nature(data),
172183
"phone": phone,
173184
"mobile": mobile,
174185
"state_id": state_id,
@@ -221,6 +232,16 @@ def _get_state_city(self, data):
221232

222233
return [state_id, city_id]
223234

235+
@api.model
236+
def _receitaws_get_legal_nature(self, data):
237+
legal_nature = data.get("natureza_juridica")
238+
if legal_nature:
239+
legal_nature = legal_nature.split(" - ")
240+
if len(legal_nature) > 1:
241+
legal_nature_code = legal_nature[0]
242+
return self._get_legal_nature(legal_nature_code)
243+
return False
244+
224245
@api.model
225246
def _receitaws_get_cnae(self, data):
226247
if data.get("atividade_principal"):

l10n_br_cnpj_search/models/l10n_br_base_party_mixin.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,10 @@ class PartyMixin(models.AbstractModel):
1414

1515
cnae_main_id = fields.Many2one(comodel_name="l10n_br_fiscal.cnae")
1616

17-
legal_nature = fields.Char()
17+
legal_nature_id = fields.Many2one(
18+
comodel_name="l10n_br_fiscal.legal.nature",
19+
string="Legal Nature",
20+
)
1821

1922
br_currency_id = fields.Many2one(
2023
comodel_name="res.currency",

l10n_br_cnpj_search/models/res_company.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@ class ResCompany(models.Model):
1212

1313
mobile = fields.Char(related="partner_id.mobile")
1414

15-
legal_nature = fields.Char(related="partner_id.legal_nature")
16-
1715
company_currency_id = fields.Many2one(
1816
"res.currency",
1917
related="currency_id",

l10n_br_cnpj_search/models/res_partner.py

Lines changed: 0 additions & 17 deletions
This file was deleted.

l10n_br_cnpj_search/views/res_company_view.xml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,9 @@
66
<field name="inherit_id" ref="l10n_br_fiscal.fiscal_res_company_form" />
77
<field name="priority">99</field>
88
<field name="arch" type="xml">
9-
<field name="cnae_main_id" position="after">
10-
<field name="cnae_secondary_ids" widget="many2many_tags" />
9+
<field name="cnae_secondary_ids" position="after">
1110
<field name="equity_capital" widget="monetary" />
12-
<field name="legal_nature" />
1311
</field>
14-
1512
<field name="cnpj_cpf" position="replace">
1613
<label for="cnpj_cpf" string="CNPJ" />
1714
<div class="o_row" colspan="1">

l10n_br_cnpj_search/views/res_partner_view.xml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,8 @@
99
<field name="priority">99</field>
1010
<field name="inherit_id" ref="l10n_br_fiscal.partner_form" />
1111
<field name="arch" type="xml">
12-
<field name="cnae_main_id" position="after">
13-
<field name="cnae_secondary_ids" widget="many2many_tags" />
12+
<field name="cnae_secondary_ids" position="after">
1413
<field name="equity_capital" widget="monetary" />
15-
<field name="legal_nature" />
1614
</field>
1715

1816
<field name="cnpj_cpf" position="replace">

l10n_br_cnpj_search/wizard/partner_cnpj_search_wizard.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ class PartnerCnpjSearchWizard(models.TransientModel):
3636
phone = fields.Char()
3737
mobile = fields.Char()
3838
email = fields.Char()
39-
legal_nature = fields.Char()
39+
legal_nature_id = fields.Many2one(comodel_name="l10n_br_fiscal.legal.nature")
4040
currency_id = fields.Many2one(
4141
comodel_name="res.currency",
4242
default=lambda self: self.env.ref("base.BRL"),
@@ -112,7 +112,7 @@ def action_update_partner(self):
112112
"phone": self.phone,
113113
"mobile": self.mobile,
114114
"email": self.email,
115-
"legal_nature": self.legal_nature,
115+
"legal_nature_id": self.legal_nature_id,
116116
"equity_capital": self.equity_capital,
117117
"cnae_main_id": self.cnae_main_id,
118118
"cnae_secondary_ids": self.cnae_secondary_ids,

l10n_br_cnpj_search/wizard/partner_cnpj_search_wizard.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
</group>
4141

4242
<group name="Other Information" string="Other Information">
43-
<field name="legal_nature" />
43+
<field name="legal_nature_id" />
4444
<field name="equity_capital" widget="monetary" />
4545
<field name="cnae_main_id" string="Main CNAE" />
4646
<field

l10n_br_crm_cnpj_search/views/crm_lead_form.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8" ?>
22
<odoo>
3-
<record model="ir.ui.view" id="crm_lead_cnpj_search_form_view">
3+
<record model="ir.ui.view" id="crm_idad_cnpj_search_form_view">
44
<field name="model">crm.lead</field>
55
<field name="inherit_id" ref="l10n_br_crm.l10n_br_crm_leads_form" />
66
<field name="priority" eval="100" />
@@ -53,7 +53,7 @@
5353
<page name="lead" position="inside">
5454
<group string="Fiscal">
5555
<group>
56-
<field name="legal_nature" string="Natureza jurídica" />
56+
<field name="legal_nature_id" string="Natureza jurídica" />
5757
<field name="equity_capital" string="Capital social" />
5858
</group>
5959
<group>

l10n_br_crm_cnpj_search/wizard/partner_cnpj_search_wizard.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ def action_update_partner(self):
4141
"phone": self.phone,
4242
"mobile": self.mobile,
4343
"email_from": self.email,
44-
"legal_nature": self.legal_nature,
44+
"legal_nature_id": self.legal_nature_id.id,
4545
"equity_capital": self.equity_capital,
4646
"cnae_main_id": self.cnae_main_id.id,
4747
"cnae_secondary_ids": [(6, 0, self.cnae_secondary_ids.ids)]

0 commit comments

Comments
 (0)