Skip to content

Commit

Permalink
Merge 4820600 into 489889c
Browse files Browse the repository at this point in the history
  • Loading branch information
sadamo committed Nov 3, 2016
2 parents 489889c + 4820600 commit c7ee6e2
Show file tree
Hide file tree
Showing 31 changed files with 20,535 additions and 1 deletion.
4 changes: 3 additions & 1 deletion l10n_br_base/tests/__init__.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
# -*- coding: utf-8 -*-
# @ 2016 Akretion - www.akretion.com.br -
# Magno Costa <magno.costa@akretion.com.br>
# @ 2016 KMEE - www.kmee.com.br -
# Luis Felipe Miléo <mileo@kmee.com.br>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).


from . import test_amount_to_text
from . import test_tools_fiscal
17 changes: 17 additions & 0 deletions l10n_br_base/tests/test_tools_fiscal.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# -*- coding: utf-8 -*-
# @ 2016 KMEE - www.kmee.com.br -
# Luis Felipe Miléo <mileo@kmee.com.br>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).


from openerp.addons.l10n_br_base.tools.fiscal import validate_pis_pasep
from openerp.tests.common import TransactionCase


class Tests(TransactionCase):

def test_01_validate_pis_pasep(self):
self.assertTrue(validate_pis_pasep('496.85994.95-6'))

def test_02_validate_pis_pasep(self):
self.assertFalse(validate_pis_pasep('496.85994.95-7'))
27 changes: 27 additions & 0 deletions l10n_br_base/tools/fiscal.py
Original file line number Diff line number Diff line change
Expand Up @@ -490,3 +490,30 @@ def validate_cpf(cpf):
return True

return False


def validate_pis_pasep(pis_pasep):
digits = []
for c in pis_pasep:
if c == '.' or c == ' ' or c == '\t':
continue
if c == '-':
if len(digits) != 10:
return False
continue
if c.isdigit():
digits.append(int(c))
continue
return False
if len(digits) != 11:
return False
height = [int(x) for x in "3298765432"]
total = 0
for i in range(10):
total += digits[i] * height[i]
rest = total % 11
if rest != 0:
rest = 11 - rest
if rest == digits[10]:
return True
return False
50 changes: 50 additions & 0 deletions l10n_br_hr/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg
:alt: License: AGPL-3

Brazil Localization for HR module
===========================================

This module adds contents used by Human Resources departments in Brazil.

Installation
============

Nothing special is needed to install this module.


Configuration
=============

This module don't require any special configuration.


Known issues / Roadmap
======================


Credits
=======

Contributors
------------

* Rafael Lima
* Matheus Felix
* Luis Felipe Mileo <mileo@kmee.com.br>
* Daniel Sadamo Hirayama <daniel.sadamo@kmee.com.br>


Maintainer
----------

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

This module is maintained by the OCA.

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

To contribute to this module, please visit http://odoo-community.org.
6 changes: 6 additions & 0 deletions l10n_br_hr/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# -*- coding: utf-8 -*-
# (c) 2014 Kmee - Luis Felipe Mileo <mileo@kmee.com.br>
# (c) 2014 Kmee - Matheus Lima Felix <matheus.felix@kmee.com.br>
# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html

from . import model
29 changes: 29 additions & 0 deletions l10n_br_hr/__openerp__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# -*- coding: utf-8 -*-
# (c) 2014 Kmee - Luis Felipe Mileo <mileo@kmee.com.br>
# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html

{
'name': 'Brazilian Localization HR',
'category': 'Localization',
'author': 'KMEE, Odoo Community Association (OCA)',
'website': 'http://www.kmee.com.br',
'version': '8.0.0.0.0',
'depends': ['hr', 'l10n_br_base'],
'data': [
'data/l10n_br_hr.cbo.csv',
'data/dependent_type_data.xml',
'data/hr_employee_data.xml',
'data/hr_employee_nationality_code_data.xml',
'security/ir.model.access.csv',
'view/l10n_br_hr_cbo_view.xml',
'view/hr_employee_view.xml',
'view/hr_job_view.xml',
],
'test': [
'test/l10n_br_hr_demo.yml'
],
'installable': True,
'images': [],
'auto_install': False,
'license': 'AGPL-3',
}
76 changes: 76 additions & 0 deletions l10n_br_hr/data/dependent_type_data.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data noupdate="0">

<record id='l10n_br_dependent_1' model="hr.dependent.type">
<field name="name">Cônjuge</field>
<field name="code">1</field>
</record>

<record id='l10n_br_dependent_2' model="hr.dependent.type">
<field name="name">Companheiro(a) com o(a) qual tenha filho ou viva há mais de 5 (cinco) anos</field>
<field name="code">2</field>
</record>

<record id='l10n_br_dependent_3' model="hr.dependent.type">
<field name="name">Filho(a) ou enteado(a) até 21 (vinte e um) anos</field>
<field name="code">3</field>
</record>

<record id='l10n_br_dependent_4' model="hr.dependent.type">
<field name="name">Filho(a) ou enteado(a) universitário(a) ou cursando escola técnica de 2º grau, até 24 (vinte e quatro) anos</field>
<field name="code">4</field>
</record>

<record id='l10n_br_dependent_5' model="hr.dependent.type">
<field name="name">Filho(a) ou enteado(a) em qualquer idade, quando incapacitado física e/ou mentalmente para o trabalho</field>
<field name="code">5</field>
</record>

<record id='l10n_br_dependent_6' model="hr.dependent.type">
<field name="name">Irmão(ã), neto(a) ou bisneto(a) sem arrimo dos pais, do(a) qual detenha a guarda judicial, até 21 (vinte e um) anos</field>
<field name="code">6</field>
</record>

<record id='l10n_br_dependent_7' model="hr.dependent.type">
<field name="name">Irmão(ã), neto(a) ou bisneto(a) sem arrimo dos pais, com idade até 24 anos, se ainda estiver cursando estabelecimento de nível superior ou escola técnica de 2º grau, desde que tenha detido sua guarda judicial até os 21 anos</field>
<field name="code">7</field>
</record>

<record id='l10n_br_dependent_8' model="hr.dependent.type">
<field name="name">Irmão(ã), neto(a) ou bisneto(a) sem arrimo dos pais, do(a) qual detenha a guarda judicial, em qualquer idade, quando incapacitado física e/ou mentalmente para o trabalho</field>
<field name="code">8</field>
</record>

<record id='l10n_br_dependent_9_1' model="hr.dependent.type">
<field name="name">Pai</field>
<field name="code">9</field>
</record>

<record id='l10n_br_dependent_9_2' model="hr.dependent.type">
<field name="name">Mãe</field>
<field name="code">9</field>
</record>

<record id='l10n_br_dependent_9_3' model="hr.dependent.type">
<field name="name">Avós e bisavós</field>
<field name="code">9</field>
</record>

<record id='l10n_br_dependent_10' model="hr.dependent.type">
<field name="name">Menor pobre, até 21 (vinte e um) anos, que crie e eduque e do qual detenha a guarda judicial</field>
<field name="code">10</field>
</record>

<record id='l10n_br_dependent_11' model="hr.dependent.type">
<field name="name">A pessoa absolutamente incapaz, da qual seja tutor ou curador</field>
<field name="code">11</field>
</record>

<record id='l10n_br_dependent_12' model="hr.dependent.type">
<field name="name">Ex-cônjuge que Receba Pensão de Alimentos</field>
<field name="code">12</field>
</record>

</data>
</openerp>
104 changes: 104 additions & 0 deletions l10n_br_hr/data/hr_employee_data.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data noupdate="0">

<!-- ETHNICITY -->
<record id="ethnicity_1" model="hr.ethnicity">
<field name="name">Indigene</field>
<field name="code">1</field>
</record>
<record id="ethnicity_2" model="hr.ethnicity">
<field name="name">White</field>
<field name="code">2</field>
</record>
<record id="ethnicity_4" model="hr.ethnicity">
<field name="name">Black</field>
<field name="code">4</field>
</record>
<record id="ethnicity_6" model="hr.ethnicity">
<field name="name">Asian</field>
<field name="code">6</field>
</record>
<record id="ethnicity_8" model="hr.ethnicity">
<field name="name">Pardo</field>
<field name="code">8</field>
</record>
<record id="ethnicity_9" model="hr.ethnicity">
<field name="name">Not Informed</field>
<field name="code">9</field>
</record>

<!--EDUCATIONAL ATTAINMENT -->
<record id="educational_attainment_1" model="hr.educational.attainment">
<field name="name">Analfabeto, inclusive o que, embora tenha recebido instrução, não se alfabetizou</field>
<field name="code">1</field>
</record>
<record id="educational_attainment_2" model="hr.educational.attainment">
<field name="name">Até o 5º ano incompleto do Ensino Fundamental (antiga 4ª série) ou que se tenha alfabetizado sem ter frequentado escola regular</field>
<field name="code">2</field>
</record>
<record id="educational_attainment_3" model="hr.educational.attainment">
<field name="name">5º ano completo do Ensino Fundamental</field>
<field name="code">3</field>
</record>
<record id="educational_attainment_4" model="hr.educational.attainment">
<field name="name">Do 6º ao 9º ano do Ensino Fundamental incompleto (antiga 5ª à 8ª série)</field>
<field name="code">4</field>
</record>
<record id="educational_attainment_5" model="hr.educational.attainment">
<field name="name">Ensino Fundamental completo</field>
<field name="code">5</field>
</record>
<record id="educational_attainment_6" model="hr.educational.attainment">
<field name="name">Ensino Médio incompleto</field>
<field name="code">6</field>
</record>
<record id="educational_attainment_7" model="hr.educational.attainment">
<field name="name">Ensino Médio completo</field>
<field name="code">7</field>
</record>
<record id="educational_attainment_8" model="hr.educational.attainment">
<field name="name">Educação Superior incompleta</field>
<field name="code">8</field>
</record>
<record id="educational_attainment_9" model="hr.educational.attainment">
<field name="name">Educação Superior completa</field>
<field name="code">9</field>
</record>
<record id="educational_attainment_10" model="hr.educational.attainment">
<field name="name">Mestrado completo</field>
<field name="code">10</field>
</record>
<record id="educational_attainment_11" model="hr.educational.attainment">
<field name="name">Doutorado completo</field>
<field name="code">11</field>
</record>

<!--DEFICIENCY TYPE -->
<record id="deficiency_1" model="hr.deficiency">
<field name="name">Física</field>
<field name="code">1</field>
</record>
<record id="deficiency_2" model="hr.deficiency">
<field name="name">Auditiva</field>
<field name="code">2</field>
</record>
<record id="deficiency_3" model="hr.deficiency">
<field name="name">Visual</field>
<field name="code">3</field>
</record>
<record id="deficiency_4" model="hr.deficiency">
<field name="name">Intelectual (Mental)</field>
<field name="code">4</field>
</record>
<record id="deficiency_5" model="hr.deficiency">
<field name="name">Múltipla</field>
<field name="code">5</field>
</record>
<record id="deficiency_6" model="hr.deficiency">
<field name="name">Reabilitado</field>
<field name="code">6</field>
</record>

</data>
</openerp>

0 comments on commit c7ee6e2

Please sign in to comment.