From 4a20dca4515b5dd2ee42bdccdf3bfccc098acee4 Mon Sep 17 00:00:00 2001 From: Renato Lima Date: Fri, 23 Jul 2021 18:14:48 -0300 Subject: [PATCH] [ADD] custom NFE DI class --- l10n_br_nfe/__manifest__.py | 1 + l10n_br_nfe/models/__init__.py | 1 + l10n_br_nfe/models/nfe_di.py | 60 ++++++++++++++++++++++++++++ l10n_br_nfe/views/nfe_di_view.xml | 66 +++++++++++++++++++++++++++++++ 4 files changed, 128 insertions(+) create mode 100644 l10n_br_nfe/models/nfe_di.py create mode 100644 l10n_br_nfe/views/nfe_di_view.xml diff --git a/l10n_br_nfe/__manifest__.py b/l10n_br_nfe/__manifest__.py index 1c0d5da8b8c2..fa0a25efa5d7 100644 --- a/l10n_br_nfe/__manifest__.py +++ b/l10n_br_nfe/__manifest__.py @@ -28,6 +28,7 @@ # Views "views/res_company_view.xml", "views/nfe_document_view.xml", + "views/nfe_di_view.xml", "views/res_config_settings_view.xml", "views/mde/mde_views.xml", "views/dfe/dfe_views.xml", diff --git a/l10n_br_nfe/models/__init__.py b/l10n_br_nfe/models/__init__.py index e8a09f1a5adc..700c5f5cd36a 100644 --- a/l10n_br_nfe/models/__init__.py +++ b/l10n_br_nfe/models/__init__.py @@ -15,6 +15,7 @@ from . import document from . import document_line from . import document_supplement +from . import nfe_di from . import res_city from . import res_config_settings from . import cfop diff --git a/l10n_br_nfe/models/nfe_di.py b/l10n_br_nfe/models/nfe_di.py new file mode 100644 index 000000000000..db9ae6cd54b0 --- /dev/null +++ b/l10n_br_nfe/models/nfe_di.py @@ -0,0 +1,60 @@ +# Copyright 2021 Akretion (Renato Lima ) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import fields, models + +TPVIATRANSP_DI = [ + ("1", "1 - Maritima"), + ("2", "2 - Fluvial"), + ("3", "3 - Lacustre"), + ("4", "4 - Aerea"), + ("5", "5 - Postal"), + ("6", "6 - Ferroviaria"), + ("7", "7 - Rodoviaria"), + ("8", "8 - Conduto/Rede Transmissão"), + ("9", "9 - Meios Próprios"), + ("10", "10 - Entrada/Saída Ficta"), + ("11", "11 - Courier"), + ("12", "12 - Em mãos"), + ("13", "13 - Por reboque"), +] + +TPINTERMEDIO_DI = [ + ("1", "1 - Por conta própria"), + ("2", "2 - Por conta e ordem"), + ("3", "3 - Encomenda"), +] + + +class NFeDI(models.AbstractModel): + _inherit = "nfe.40.di" + + state_clearance_id = fields.Many2one( + comodel_name="res.country.state", + string="State Clearance", + ) + + nfe40_UFDesemb = fields.Char( + related="state_clearance_id.code", + ) + + nfe40_tpViaTransp = fields.Selection( + selection=TPVIATRANSP_DI, + ) + + nfe40_tpIntermedio = fields.Selection( + selection=TPINTERMEDIO_DI, + ) + + partner_acquirer_id = fields.Many2one( + comodel_name="res.partner", + string="Partner Acquirer" + ) + + nfe40_CNPJ = fields.Char( + related="partner_acquirer_id.nfe40_CNPJ", + ) + + nfe40_UFTerceiro = fields.Char( + related="partner_acquirer_id.state_id.code", + ) diff --git a/l10n_br_nfe/views/nfe_di_view.xml b/l10n_br_nfe/views/nfe_di_view.xml new file mode 100644 index 000000000000..ef9947552492 --- /dev/null +++ b/l10n_br_nfe/views/nfe_di_view.xml @@ -0,0 +1,66 @@ + + + + + nfe.40.di.tree + nfe.40.di + + + + + + + + + + + + + + + + nfe.40.di.form + nfe.40.di + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +