Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 22 additions & 26 deletions l10n_br_base/README.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,3 @@
.. image:: https://odoo-community.org/readme-banner-image
:target: https://odoo-community.org/get-involved?utm_source=readme
:alt: Odoo Community Association

===========================
Brazilian Localization Base
===========================
Expand All @@ -17,7 +13,7 @@ Brazilian Localization Base
.. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png
:target: https://odoo-community.org/page/development-status
:alt: Mature
.. |badge2| image:: https://img.shields.io/badge/license-AGPL--3-blue.png
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fl10n--brazil-lightgray.png?logo=github
Expand All @@ -36,14 +32,14 @@ Este é o módulo 'raiz' da localização brasileira. Ele traz adaptações
nos modelos do módulo ``base`` do Odoo como Parceiros, Empresas e
Endereços:

- Campo CNPJ e CPF com formatação e validação destes campos;
- Campo de Inscrição Estadual com validação;
- Formatação dos campos de endereço;
- Código do Banco Central e Siscomex para países;
- Código do IBGE para estados e municípios;
- Lista dos Bancos brasileiros;
- Contas bancarias e chaves PIX dos parceiros;
- Lista dos municípios brasileiros.
- Campo CNPJ e CPF com formatação e validação destes campos;
- Campo de Inscrição Estadual com validação;
- Formatação dos campos de endereço;
- Código do Banco Central e Siscomex para países;
- Código do IBGE para estados e municípios;
- Lista dos Bancos brasileiros;
- Contas bancarias e chaves PIX dos parceiros;
- Lista dos municípios brasileiros.

Se trata de um módulo muito simples e maduro. Existem alguns outros
módulos simples que dependem apenas desse módulo ou quase como
Expand All @@ -63,10 +59,10 @@ Installation

Este módulo depende dos pacotes Python:

- `erpbrasil.base <https://github.com/erpbrasil/erpbrasil.base>`__
- num2words
- phonenumbers
- email_validator
- `erpbrasil.base <https://github.com/erpbrasil/erpbrasil.base>`__
- num2words
- phonenumbers
- email_validator

Configuration
=============
Expand All @@ -86,7 +82,7 @@ instalar o módulo Contact para acessar o cadastro de parceiros.
Known issues / Roadmap
======================

- Formatação da Inscrição Estadual de acordo com cada UF.
- Formatação da Inscrição Estadual de acordo com cada UF.

Changelog
=========
Expand Down Expand Up @@ -157,19 +153,19 @@ Authors
Contributors
------------

- `Akretion <https://www.akretion.com/pt-BR>`__:
- `Akretion <https://www.akretion.com/pt-BR>`__:

- Renato Lima <[email protected]>
- Raphaël Valyi <[email protected]>
- Renato Lima <[email protected]>
- Raphaël Valyi <[email protected]>

- `KMEE <https://www.kmee.com.br>`__:
- `KMEE <https://www.kmee.com.br>`__:

- Luis Felipe Mileo <[email protected]>
- Michell Stuttgart <[email protected]>
- Luis Felipe Mileo <[email protected]>
- Michell Stuttgart <[email protected]>

- `Engenere <https://engenere.one>`__:
- `Engenere <https://engenere.one>`__:

- Antônio S. Pereira Neto <[email protected]>
- Antônio S. Pereira Neto <[email protected]>

Maintainers
-----------
Expand Down
1 change: 1 addition & 0 deletions l10n_br_base/__init__.py
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
from .hooks import post_init_hook
from . import models
2 changes: 1 addition & 1 deletion l10n_br_base/__manifest__.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,13 +33,13 @@
},
"demo": [
"demo/l10n_br_base_demo.xml",
"demo/res_partner_demo.xml",
"demo/res_company_demo.xml",
"demo/res_users_demo.xml",
"demo/res_partner_pix_demo.xml",
],
"installable": True,
"development_status": "Mature",
"post_init_hook": "post_init_hook",
"external_dependencies": {
"python": [
"num2words",
Expand Down
4 changes: 2 additions & 2 deletions l10n_br_base/demo/l10n_br_base_demo.xml
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@
-->
<field name="company_type">person</field>
<field name="type">delivery</field>
<field name="parent_id" ref="l10n_br_base.res_partner_cliente2_sp" />
<!--field name="parent_id" ref="l10n_br_base.res_partner_cliente2_sp" /-->
<field name="active" eval="1" />
</record>
<function model="res.partner" name="_onchange_city_id">
Expand Down Expand Up @@ -423,7 +423,7 @@
-->
<field name="company_type">person</field>
<field name="type">invoice</field>
<field name="parent_id" ref="l10n_br_base.res_partner_cliente7_rs" />
<!--field name="parent_id" ref="l10n_br_base.res_partner_cliente7_rs" /-->
<field name="active" eval="1" />
</record>
<function model="res.partner" name="_onchange_city_id">
Expand Down
33 changes: 0 additions & 33 deletions l10n_br_base/demo/res_partner_demo.xml

This file was deleted.

15 changes: 15 additions & 0 deletions l10n_br_base/hooks.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Copyright (C) 2025 - TODAY - Raphael Valyi - Akretion
# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html


def post_init_hook(env):
module = env["ir.module.module"].search([("name", "=", "l10n_br_base")])
if module.demo:
for partner in env["res.partner"].search([("legal_name", "=", False)]):
partner.legal_name = partner.name
env.ref("l10n_br_base.res_partner_cliente2_sp_end_entrega").parent_id = env.ref(
"l10n_br_base.res_partner_cliente2_sp"
).id
env.ref(
"l10n_br_base.res_partner_cliente7_rs_end_cobranca"
).parent_id = env.ref("l10n_br_base.res_partner_cliente7_rs").id
52 changes: 23 additions & 29 deletions l10n_br_base/static/description/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="generator" content="Docutils: https://docutils.sourceforge.io/" />
<title>README.rst</title>
<title>Brazilian Localization Base</title>
<style type="text/css">

/*
Expand Down Expand Up @@ -360,21 +360,16 @@
</style>
</head>
<body>
<div class="document">
<div class="document" id="brazilian-localization-base">
<h1 class="title">Brazilian Localization Base</h1>


<a class="reference external image-reference" href="https://odoo-community.org/get-involved?utm_source=readme">
<img alt="Odoo Community Association" src="https://odoo-community.org/readme-banner-image" />
</a>
<div class="section" id="brazilian-localization-base">
<h1>Brazilian Localization Base</h1>
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:8b2a071901c2764a1e7f3adaa6cc1b57c574e9253d518d20d2a8df331eadead1
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Mature" src="https://img.shields.io/badge/maturity-Mature-brightgreen.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/license-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/l10n-brazil/tree/18.0/l10n_br_base"><img alt="OCA/l10n-brazil" src="https://img.shields.io/badge/github-OCA%2Fl10n--brazil-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/l10n-brazil-18-0/l10n-brazil-18-0-l10n_br_base"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/l10n-brazil&amp;target_branch=18.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Mature" src="https://img.shields.io/badge/maturity-Mature-brightgreen.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/l10n-brazil/tree/18.0/l10n_br_base"><img alt="OCA/l10n-brazil" src="https://img.shields.io/badge/github-OCA%2Fl10n--brazil-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/l10n-brazil-18-0/l10n-brazil-18-0-l10n_br_base"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/l10n-brazil&amp;target_branch=18.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
<p>Este é o módulo ‘raiz’ da localização brasileira. Ele traz adaptações
nos modelos do módulo <tt class="docutils literal">base</tt> do Odoo como Parceiros, Empresas e
Endereços:</p>
Expand Down Expand Up @@ -423,7 +418,7 @@ <h1>Brazilian Localization Base</h1>
</ul>
</div>
<div class="section" id="installation">
<h2><a class="toc-backref" href="#toc-entry-1">Installation</a></h2>
<h1><a class="toc-backref" href="#toc-entry-1">Installation</a></h1>
<p>Este módulo depende dos pacotes Python:</p>
<ul class="simple">
<li><a class="reference external" href="https://github.com/erpbrasil/erpbrasil.base">erpbrasil.base</a></li>
Expand All @@ -433,85 +428,85 @@ <h2><a class="toc-backref" href="#toc-entry-1">Installation</a></h2>
</ul>
</div>
<div class="section" id="configuration">
<h2><a class="toc-backref" href="#toc-entry-2">Configuration</a></h2>
<h1><a class="toc-backref" href="#toc-entry-2">Configuration</a></h1>
<p>Após a instalação do módulo deve ser preenchido o endereço da empresa
para que a formação e validações necessárias para o Brasil funcione os
objetos parceiros e nos endereços.</p>
</div>
<div class="section" id="usage">
<h2><a class="toc-backref" href="#toc-entry-3">Usage</a></h2>
<h1><a class="toc-backref" href="#toc-entry-3">Usage</a></h1>
<p>Após ter o endereço da empresa configurado, no cadastro do parceiro você
encotrar os campos CNPJ, CPF, IE, RG e os campos de endereço formatado
para o Brasil. Caso você tenha apenas o módulo base instalado, você pode
instalar o módulo Contact para acessar o cadastro de parceiros.</p>
</div>
<div class="section" id="known-issues-roadmap">
<h2><a class="toc-backref" href="#toc-entry-4">Known issues / Roadmap</a></h2>
<h1><a class="toc-backref" href="#toc-entry-4">Known issues / Roadmap</a></h1>
<ul class="simple">
<li>Formatação da Inscrição Estadual de acordo com cada UF.</li>
</ul>
</div>
<div class="section" id="changelog">
<h2><a class="toc-backref" href="#toc-entry-5">Changelog</a></h2>
<h1><a class="toc-backref" href="#toc-entry-5">Changelog</a></h1>
<div class="section" id="section-1">
<h3><a class="toc-backref" href="#toc-entry-6">12.0.1.0.0 (2019)</a></h3>
<h2><a class="toc-backref" href="#toc-entry-6">12.0.1.0.0 (2019)</a></h2>
<p>A partir da versão 12.0 foi extraído o pacote de validações cadastrais
<tt class="docutils literal">erpbrasil.base</tt> no intuito de minimizar o código que depende de uma
versão especifica do Odoo e para desenvolver sinergias com outras
comunidades de código aberto.</p>
</div>
<div class="section" id="unreleased">
<h3><a class="toc-backref" href="#toc-entry-7">11.0 (unreleased)</a></h3>
<h2><a class="toc-backref" href="#toc-entry-7">11.0 (unreleased)</a></h2>
<p>Devido ao atraso com a versão 11.0 foi decido de pular a versão 11.0 e
trabalhar direitamente para a versão 12.0.</p>
</div>
<div class="section" id="section-2">
<h3><a class="toc-backref" href="#toc-entry-8">10.0.1.0.0 (2017)</a></h3>
<h2><a class="toc-backref" href="#toc-entry-8">10.0.1.0.0 (2017)</a></h2>
<p>Devido ao trabalho enorme com a reescritura do módulo de contabilidade
na versão 9 e a problemas pessoas de um dos autores, essa versão atrasou
um pouco para sair.</p>
</div>
<div class="section" id="section-3">
<h3><a class="toc-backref" href="#toc-entry-9">9.0.1.0.0 (2015)</a></h3>
<h2><a class="toc-backref" href="#toc-entry-9">9.0.1.0.0 (2015)</a></h2>
</div>
<div class="section" id="section-4">
<h3><a class="toc-backref" href="#toc-entry-10">8.0.1.0.0 (2014)</a></h3>
<h2><a class="toc-backref" href="#toc-entry-10">8.0.1.0.0 (2014)</a></h2>
</div>
<div class="section" id="section-5">
<h3><a class="toc-backref" href="#toc-entry-11">7.0.1.0.0 (2013)</a></h3>
<h2><a class="toc-backref" href="#toc-entry-11">7.0.1.0.0 (2013)</a></h2>
<p>Mudança do Launchpad para Github. Mudança importante com a unificação
das tabelas de parceiros e endereços.</p>
</div>
<div class="section" id="section-6">
<h3><a class="toc-backref" href="#toc-entry-12">6.1.1.0.0 (2012)</a></h3>
<h2><a class="toc-backref" href="#toc-entry-12">6.1.1.0.0 (2012)</a></h2>
</div>
<div class="section" id="section-7">
<h3><a class="toc-backref" href="#toc-entry-13">6.0.1.0.0 (2011)</a></h3>
<h2><a class="toc-backref" href="#toc-entry-13">6.0.1.0.0 (2011)</a></h2>
</div>
<div class="section" id="section-8">
<h3><a class="toc-backref" href="#toc-entry-14">5.0.1.0.0 (2009)</a></h3>
<h2><a class="toc-backref" href="#toc-entry-14">5.0.1.0.0 (2009)</a></h2>
<p>Este módulo foi criado na versão 5.0 do Odoo então chamado OpenERP. Era
inicialmente hospedado na plataforma Launchpad.</p>
</div>
</div>
<div class="section" id="bug-tracker">
<h2><a class="toc-backref" href="#toc-entry-15">Bug Tracker</a></h2>
<h1><a class="toc-backref" href="#toc-entry-15">Bug Tracker</a></h1>
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/l10n-brazil/issues">GitHub Issues</a>.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
<a class="reference external" href="https://github.com/OCA/l10n-brazil/issues/new?body=module:%20l10n_br_base%0Aversion:%2018.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
<p>Do not contact contributors directly about support or help with technical issues.</p>
</div>
<div class="section" id="credits">
<h2><a class="toc-backref" href="#toc-entry-16">Credits</a></h2>
<h1><a class="toc-backref" href="#toc-entry-16">Credits</a></h1>
<div class="section" id="authors">
<h3><a class="toc-backref" href="#toc-entry-17">Authors</a></h3>
<h2><a class="toc-backref" href="#toc-entry-17">Authors</a></h2>
<ul class="simple">
<li>Akretion</li>
</ul>
</div>
<div class="section" id="contributors">
<h3><a class="toc-backref" href="#toc-entry-18">Contributors</a></h3>
<h2><a class="toc-backref" href="#toc-entry-18">Contributors</a></h2>
<ul class="simple">
<li><a class="reference external" href="https://www.akretion.com/pt-BR">Akretion</a>:<ul>
<li>Renato Lima &lt;<a class="reference external" href="mailto:renato.lima&#64;akretion.com.br">renato.lima&#64;akretion.com.br</a>&gt;</li>
Expand All @@ -530,7 +525,7 @@ <h3><a class="toc-backref" href="#toc-entry-18">Contributors</a></h3>
</ul>
</div>
<div class="section" id="maintainers">
<h3><a class="toc-backref" href="#toc-entry-19">Maintainers</a></h3>
<h2><a class="toc-backref" href="#toc-entry-19">Maintainers</a></h2>
<p>This module is maintained by the OCA.</p>
<a class="reference external image-reference" href="https://odoo-community.org">
<img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" />
Expand All @@ -545,6 +540,5 @@ <h3><a class="toc-backref" href="#toc-entry-19">Maintainers</a></h3>
</div>
</div>
</div>
</div>
</body>
</html>
10 changes: 10 additions & 0 deletions l10n_br_base/tests/test_base_onchange.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,22 @@

from odoo.tests import TransactionCase

from .tools import load_fixture_files


class L10nBrBaseOnchangeTest(TransactionCase):
@classmethod
def setUpClass(cls):
super().setUpClass()

load_fixture_files(
cls.env,
"l10n_br_base",
file_names=[
"l10n_br_base_demo.xml",
],
)

cls.company_01 = (
cls.env["res.company"]
.with_context(tracking_disable=True)
Expand Down
9 changes: 9 additions & 0 deletions l10n_br_base/tests/test_partner_bank.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,20 @@
from odoo.exceptions import UserError
from odoo.tests import TransactionCase

from .tools import load_fixture_files


class PartnerBankTest(TransactionCase):
@classmethod
def setUpClass(cls):
super().setUpClass()
load_fixture_files(
cls.env,
"l10n_br_base",
file_names=[
"l10n_br_base_demo.xml",
],
)
cls.partner_bank_model = cls.env["res.partner.bank"]
cls.partner_id = cls.env.ref("l10n_br_base.res_partner_amd")
cls.bank_id = cls.env.ref("l10n_br_base.res_bank_001")
Expand Down
Loading