odoo-addon-l10n-br-fiscal 17.0.1.0.0.11__py3-none-any.whl → 18.0.5.0.0.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of odoo-addon-l10n-br-fiscal might be problematic. Click here for more details.
- odoo/addons/l10n_br_fiscal/README.rst +10 -10
- odoo/addons/l10n_br_fiscal/__init__.py +1 -0
- odoo/addons/l10n_br_fiscal/__manifest__.py +3 -2
- odoo/addons/l10n_br_fiscal/constants/fiscal.py +51 -24
- odoo/addons/l10n_br_fiscal/data/ir_cron.xml +19 -34
- odoo/addons/l10n_br_fiscal/data/l10n_br_fiscal.document.type.csv +1 -0
- odoo/addons/l10n_br_fiscal/data/l10n_br_fiscal_cfop_data.xml +0 -2
- odoo/addons/l10n_br_fiscal/data/l10n_br_fiscal_data.xml +6 -8
- odoo/addons/l10n_br_fiscal/data/l10n_br_fiscal_icms_tax_definition_data.xml +4055 -4033
- odoo/addons/l10n_br_fiscal/data/l10n_br_fiscal_server_action.xml +0 -2
- odoo/addons/l10n_br_fiscal/data/l10n_br_fiscal_tax_icms_data.xml +54 -50
- odoo/addons/l10n_br_fiscal/data/operation_data.xml +198 -182
- odoo/addons/l10n_br_fiscal/data/product_data.xml +0 -2
- odoo/addons/l10n_br_fiscal/data/res_partner_data.xml +0 -2
- odoo/addons/l10n_br_fiscal/data/simplified_tax_data.xml +0 -2
- odoo/addons/l10n_br_fiscal/data/uom_data.xml +0 -2
- odoo/addons/l10n_br_fiscal/demo/city_taxation_code_demo.xml +0 -2
- odoo/addons/l10n_br_fiscal/demo/company_demo.xml +0 -3
- odoo/addons/l10n_br_fiscal/demo/fiscal_document_demo.xml +40 -228
- odoo/addons/l10n_br_fiscal/demo/fiscal_document_nfse_demo.xml +0 -5
- odoo/addons/l10n_br_fiscal/demo/fiscal_operation_demo.xml +2 -4
- odoo/addons/l10n_br_fiscal/demo/icms_tax_definition_demo.xml +0 -2
- odoo/addons/l10n_br_fiscal/demo/partner_demo.xml +0 -2
- odoo/addons/l10n_br_fiscal/demo/product_demo.xml +0 -1705
- odoo/addons/l10n_br_fiscal/demo/res_users_demo.xml +0 -2
- odoo/addons/l10n_br_fiscal/hooks.py +68 -0
- odoo/addons/l10n_br_fiscal/i18n/l10n_br_fiscal.pot +232 -201
- odoo/addons/l10n_br_fiscal/i18n/pt_BR.po +1272 -1344
- odoo/addons/l10n_br_fiscal/migrations/18.0.2.0.0/pre-migration.py +25 -0
- odoo/addons/l10n_br_fiscal/migrations/18.0.3.0.0/pre-migration.py +30 -0
- odoo/addons/l10n_br_fiscal/models/cfop.py +1 -1
- odoo/addons/l10n_br_fiscal/models/cnae.py +2 -2
- odoo/addons/l10n_br_fiscal/models/comment.py +12 -27
- odoo/addons/l10n_br_fiscal/models/cst.py +2 -2
- odoo/addons/l10n_br_fiscal/models/data_abstract.py +11 -24
- odoo/addons/l10n_br_fiscal/models/document.py +57 -9
- odoo/addons/l10n_br_fiscal/models/document_line.py +65 -5
- odoo/addons/l10n_br_fiscal/models/document_line_mixin.py +118 -38
- odoo/addons/l10n_br_fiscal/models/document_line_mixin_methods.py +261 -295
- odoo/addons/l10n_br_fiscal/models/document_mixin.py +8 -16
- odoo/addons/l10n_br_fiscal/models/document_mixin_methods.py +49 -177
- odoo/addons/l10n_br_fiscal/models/document_related.py +1 -1
- odoo/addons/l10n_br_fiscal/models/document_serie.py +35 -2
- odoo/addons/l10n_br_fiscal/models/document_type.py +0 -1
- odoo/addons/l10n_br_fiscal/models/ibpt.py +1 -1
- odoo/addons/l10n_br_fiscal/models/icms_regulation.py +1 -1
- odoo/addons/l10n_br_fiscal/models/invalidate_number.py +6 -7
- odoo/addons/l10n_br_fiscal/models/legal_nature.py +1 -1
- odoo/addons/l10n_br_fiscal/models/nbm.py +2 -2
- odoo/addons/l10n_br_fiscal/models/nbs.py +4 -4
- odoo/addons/l10n_br_fiscal/models/ncm.py +4 -4
- odoo/addons/l10n_br_fiscal/models/operation.py +2 -2
- odoo/addons/l10n_br_fiscal/models/operation_dashboard.py +3 -2
- odoo/addons/l10n_br_fiscal/models/operation_line.py +1 -1
- odoo/addons/l10n_br_fiscal/models/partner_profile.py +7 -1
- odoo/addons/l10n_br_fiscal/models/product_template.py +1 -1
- odoo/addons/l10n_br_fiscal/models/res_partner.py +9 -0
- odoo/addons/l10n_br_fiscal/models/tax.py +12 -4
- odoo/addons/l10n_br_fiscal/models/tax_group.py +6 -6
- odoo/addons/l10n_br_fiscal/models/tax_pis_cofins.py +4 -4
- odoo/addons/l10n_br_fiscal/models/tax_pis_cofins_base.py +3 -3
- odoo/addons/l10n_br_fiscal/models/tax_pis_cofins_credit.py +3 -3
- odoo/addons/l10n_br_fiscal/security/fiscal_security.xml +6 -18
- odoo/addons/l10n_br_fiscal/security/ir.model.access.csv +1 -2
- odoo/addons/l10n_br_fiscal/static/description/index.html +8 -8
- odoo/addons/l10n_br_fiscal/tests/__init__.py +1 -0
- odoo/addons/l10n_br_fiscal/tests/test_document_edition.py +200 -14
- odoo/addons/l10n_br_fiscal/tests/test_fiscal_document_generic.py +16 -44
- odoo/addons/l10n_br_fiscal/tests/test_fiscal_document_nfse.py +0 -5
- odoo/addons/l10n_br_fiscal/tests/test_fiscal_document_serie.py +60 -0
- odoo/addons/l10n_br_fiscal/tests/test_tax_benefit.py +2 -5
- odoo/addons/l10n_br_fiscal/views/cest_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/cfop_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/city_taxation_code.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/cnae_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/comment_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/cst_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/document_line_mixin_view.xml +1 -1
- odoo/addons/l10n_br_fiscal/views/document_line_view.xml +6 -4
- odoo/addons/l10n_br_fiscal/views/document_related_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/document_serie_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/document_type_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/document_view.xml +29 -29
- odoo/addons/l10n_br_fiscal/views/icms_regulation_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/icms_relief_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/invalidate_number_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/l10n_br_fiscal_action.xml +36 -36
- odoo/addons/l10n_br_fiscal/views/l10n_br_fiscal_menu.xml +0 -9
- odoo/addons/l10n_br_fiscal/views/legal_nature_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/nbm_view.xml +5 -5
- odoo/addons/l10n_br_fiscal/views/nbs_view.xml +5 -5
- odoo/addons/l10n_br_fiscal/views/ncm_view.xml +5 -5
- odoo/addons/l10n_br_fiscal/views/operation_dashboard_view.xml +7 -8
- odoo/addons/l10n_br_fiscal/views/operation_line_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/operation_view.xml +4 -4
- odoo/addons/l10n_br_fiscal/views/partner_profile_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/product_genre_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/product_product_view.xml +38 -11
- odoo/addons/l10n_br_fiscal/views/product_template_view.xml +22 -9
- odoo/addons/l10n_br_fiscal/views/res_config_settings_view.xml +8 -8
- odoo/addons/l10n_br_fiscal/views/res_partner_view.xml +9 -0
- odoo/addons/l10n_br_fiscal/views/service_type_view.xml +5 -5
- odoo/addons/l10n_br_fiscal/views/simplified_tax_range_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/simplified_tax_view.xml +4 -4
- odoo/addons/l10n_br_fiscal/views/tax_definition_view.xml +4 -4
- odoo/addons/l10n_br_fiscal/views/tax_estimate_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/tax_group_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/tax_ipi_control_seal_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/tax_ipi_guideline_class_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/tax_ipi_guideline_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/tax_pis_cofins_base_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/tax_pis_cofins_credit_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/tax_pis_cofins_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/tax_view.xml +2 -2
- odoo/addons/l10n_br_fiscal/views/uom_uom.xml +2 -2
- odoo/addons/l10n_br_fiscal/wizards/base_wizard_mixin.py +1 -1
- {odoo_addon_l10n_br_fiscal-17.0.1.0.0.11.dist-info → odoo_addon_l10n_br_fiscal-18.0.5.0.0.1.dist-info}/METADATA +16 -16
- {odoo_addon_l10n_br_fiscal-17.0.1.0.0.11.dist-info → odoo_addon_l10n_br_fiscal-18.0.5.0.0.1.dist-info}/RECORD +120 -116
- {odoo_addon_l10n_br_fiscal-17.0.1.0.0.11.dist-info → odoo_addon_l10n_br_fiscal-18.0.5.0.0.1.dist-info}/WHEEL +0 -0
- {odoo_addon_l10n_br_fiscal-17.0.1.0.0.11.dist-info → odoo_addon_l10n_br_fiscal-18.0.5.0.0.1.dist-info}/top_level.txt +0 -0
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
from odoo import api, fields, models
|
|
5
5
|
|
|
6
6
|
from ..constants.fiscal import (
|
|
7
|
+
FINAL_CUSTOMER,
|
|
7
8
|
FISCAL_COMMENT_LINE,
|
|
8
9
|
PRODUCT_FISCAL_TYPE,
|
|
9
10
|
TAX_BASE_TYPE,
|
|
10
|
-
TAX_BASE_TYPE_PERCENT,
|
|
11
11
|
TAX_DOMAIN_COFINS,
|
|
12
12
|
TAX_DOMAIN_COFINS_ST,
|
|
13
13
|
TAX_DOMAIN_COFINS_WH,
|
|
@@ -34,11 +34,8 @@ from ..constants.fiscal import (
|
|
|
34
34
|
)
|
|
35
35
|
from ..constants.icms import (
|
|
36
36
|
ICMS_BASE_TYPE,
|
|
37
|
-
ICMS_BASE_TYPE_DEFAULT,
|
|
38
37
|
ICMS_ORIGIN,
|
|
39
|
-
ICMS_ORIGIN_DEFAULT,
|
|
40
38
|
ICMS_ST_BASE_TYPE,
|
|
41
|
-
ICMS_ST_BASE_TYPE_DEFAULT,
|
|
42
39
|
)
|
|
43
40
|
from ..constants.issqn import (
|
|
44
41
|
ISSQN_ELIGIBILITY,
|
|
@@ -78,10 +75,6 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
78
75
|
_inherit = "l10n_br_fiscal.document.line.mixin.methods"
|
|
79
76
|
_description = "Document Fiscal Mixin"
|
|
80
77
|
|
|
81
|
-
@api.model
|
|
82
|
-
def _default_operation(self):
|
|
83
|
-
return False
|
|
84
|
-
|
|
85
78
|
@api.model
|
|
86
79
|
def _default_icmssn_range_id(self):
|
|
87
80
|
company = self.env.company
|
|
@@ -117,7 +110,10 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
117
110
|
tax_icms_or_issqn = fields.Selection(
|
|
118
111
|
selection=TAX_ICMS_OR_ISSQN,
|
|
119
112
|
string="ICMS or ISSQN Tax",
|
|
120
|
-
|
|
113
|
+
compute="_compute_product_fiscal_fields",
|
|
114
|
+
store=True,
|
|
115
|
+
readonly=False,
|
|
116
|
+
precompute=True,
|
|
121
117
|
)
|
|
122
118
|
|
|
123
119
|
partner_is_public_entity = fields.Boolean(related="partner_id.is_public_entity")
|
|
@@ -129,26 +125,58 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
129
125
|
|
|
130
126
|
price_unit = fields.Float(
|
|
131
127
|
digits="Product Price",
|
|
132
|
-
|
|
128
|
+
store=True,
|
|
129
|
+
)
|
|
130
|
+
|
|
131
|
+
partner_id = fields.Many2one(comodel_name="res.partner", string="Partner")
|
|
132
|
+
|
|
133
|
+
company_id = fields.Many2one(
|
|
134
|
+
comodel_name="res.company",
|
|
135
|
+
string="Company",
|
|
136
|
+
)
|
|
137
|
+
|
|
138
|
+
ind_final = fields.Selection(
|
|
139
|
+
selection=FINAL_CUSTOMER,
|
|
140
|
+
string="Consumidor final",
|
|
141
|
+
compute="_compute_ind_final",
|
|
133
142
|
store=True,
|
|
134
143
|
precompute=True,
|
|
135
144
|
readonly=False,
|
|
136
145
|
)
|
|
137
146
|
|
|
138
|
-
|
|
147
|
+
def _compute_ind_final(self):
|
|
148
|
+
for line in self:
|
|
149
|
+
doc = line._get_document()
|
|
150
|
+
if line.ind_final != doc.ind_final:
|
|
151
|
+
line.ind_final = doc.ind_final
|
|
139
152
|
|
|
140
153
|
partner_company_type = fields.Selection(related="partner_id.company_type")
|
|
141
154
|
|
|
142
|
-
uom_id = fields.Many2one(
|
|
155
|
+
uom_id = fields.Many2one(
|
|
156
|
+
comodel_name="uom.uom",
|
|
157
|
+
string="UOM",
|
|
158
|
+
)
|
|
143
159
|
|
|
144
160
|
quantity = fields.Float(
|
|
145
161
|
digits="Product Unit of Measure",
|
|
146
162
|
)
|
|
147
163
|
|
|
148
|
-
fiscal_type = fields.Selection(
|
|
164
|
+
fiscal_type = fields.Selection(
|
|
165
|
+
selection=PRODUCT_FISCAL_TYPE,
|
|
166
|
+
compute="_compute_product_fiscal_fields",
|
|
167
|
+
store=True,
|
|
168
|
+
readonly=False,
|
|
169
|
+
precompute=True,
|
|
170
|
+
)
|
|
149
171
|
|
|
150
172
|
ncm_id = fields.Many2one(
|
|
151
|
-
comodel_name="l10n_br_fiscal.ncm",
|
|
173
|
+
comodel_name="l10n_br_fiscal.ncm",
|
|
174
|
+
index=True,
|
|
175
|
+
string="NCM",
|
|
176
|
+
compute="_compute_product_fiscal_fields",
|
|
177
|
+
store=True,
|
|
178
|
+
readonly=False,
|
|
179
|
+
precompute=True,
|
|
152
180
|
)
|
|
153
181
|
|
|
154
182
|
nbm_id = fields.Many2one(
|
|
@@ -156,6 +184,10 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
156
184
|
index=True,
|
|
157
185
|
string="NBM",
|
|
158
186
|
domain="[('ncm_ids', '=', ncm_id)]",
|
|
187
|
+
compute="_compute_product_fiscal_fields",
|
|
188
|
+
store=True,
|
|
189
|
+
readonly=False,
|
|
190
|
+
precompute=True,
|
|
159
191
|
)
|
|
160
192
|
|
|
161
193
|
cest_id = fields.Many2one(
|
|
@@ -163,17 +195,26 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
163
195
|
index=True,
|
|
164
196
|
string="CEST",
|
|
165
197
|
domain="[('ncm_ids', '=', ncm_id)]",
|
|
198
|
+
compute="_compute_product_fiscal_fields",
|
|
199
|
+
store=True,
|
|
200
|
+
readonly=False,
|
|
201
|
+
precompute=True,
|
|
166
202
|
)
|
|
167
203
|
|
|
168
204
|
nbs_id = fields.Many2one(
|
|
169
|
-
comodel_name="l10n_br_fiscal.nbs",
|
|
205
|
+
comodel_name="l10n_br_fiscal.nbs",
|
|
206
|
+
index=True,
|
|
207
|
+
string="NBS",
|
|
208
|
+
compute="_compute_product_fiscal_fields",
|
|
209
|
+
store=True,
|
|
210
|
+
readonly=False,
|
|
211
|
+
precompute=True,
|
|
170
212
|
)
|
|
171
213
|
|
|
172
214
|
fiscal_operation_id = fields.Many2one(
|
|
173
215
|
comodel_name="l10n_br_fiscal.operation",
|
|
174
216
|
string="Operation",
|
|
175
217
|
domain=lambda self: self._operation_domain(),
|
|
176
|
-
default=_default_operation,
|
|
177
218
|
)
|
|
178
219
|
|
|
179
220
|
fiscal_operation_type = fields.Selection(
|
|
@@ -189,8 +230,12 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
189
230
|
fiscal_operation_line_id = fields.Many2one(
|
|
190
231
|
comodel_name="l10n_br_fiscal.operation.line",
|
|
191
232
|
string="Operation Line",
|
|
233
|
+
compute="_compute_fiscal_operation_line_id",
|
|
192
234
|
domain="[('fiscal_operation_id', '=', fiscal_operation_id), "
|
|
193
235
|
"('state', '=', 'approved')]",
|
|
236
|
+
store=True,
|
|
237
|
+
precompute=True,
|
|
238
|
+
readonly=False,
|
|
194
239
|
)
|
|
195
240
|
|
|
196
241
|
cfop_id = fields.Many2one(
|
|
@@ -263,11 +308,11 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
263
308
|
compute="_compute_fiscal_amounts",
|
|
264
309
|
)
|
|
265
310
|
|
|
266
|
-
|
|
311
|
+
fiscal_amount_untaxed = fields.Monetary(
|
|
267
312
|
compute="_compute_fiscal_amounts",
|
|
268
313
|
)
|
|
269
314
|
|
|
270
|
-
|
|
315
|
+
fiscal_amount_tax = fields.Monetary(
|
|
271
316
|
compute="_compute_fiscal_amounts",
|
|
272
317
|
)
|
|
273
318
|
|
|
@@ -275,7 +320,7 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
275
320
|
compute="_compute_fiscal_amounts",
|
|
276
321
|
)
|
|
277
322
|
|
|
278
|
-
|
|
323
|
+
fiscal_amount_total = fields.Monetary(
|
|
279
324
|
compute="_compute_fiscal_amounts",
|
|
280
325
|
)
|
|
281
326
|
|
|
@@ -294,14 +339,35 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
294
339
|
compute="_compute_fiscal_amounts",
|
|
295
340
|
)
|
|
296
341
|
|
|
297
|
-
amount_tax_included = fields.Monetary(
|
|
342
|
+
amount_tax_included = fields.Monetary(
|
|
343
|
+
compute="_compute_tax_fields",
|
|
344
|
+
store=True,
|
|
345
|
+
precompute=True,
|
|
346
|
+
readonly=False,
|
|
347
|
+
)
|
|
298
348
|
|
|
299
|
-
amount_tax_not_included = fields.Monetary(
|
|
349
|
+
amount_tax_not_included = fields.Monetary(
|
|
350
|
+
compute="_compute_tax_fields",
|
|
351
|
+
store=True,
|
|
352
|
+
precompute=True,
|
|
353
|
+
readonly=False,
|
|
354
|
+
)
|
|
300
355
|
|
|
301
|
-
amount_tax_withholding = fields.Monetary(
|
|
356
|
+
amount_tax_withholding = fields.Monetary(
|
|
357
|
+
string="Tax Withholding",
|
|
358
|
+
compute="_compute_tax_fields",
|
|
359
|
+
store=True,
|
|
360
|
+
precompute=True,
|
|
361
|
+
readonly=False,
|
|
362
|
+
)
|
|
302
363
|
|
|
303
364
|
fiscal_genre_id = fields.Many2one(
|
|
304
|
-
comodel_name="l10n_br_fiscal.product.genre",
|
|
365
|
+
comodel_name="l10n_br_fiscal.product.genre",
|
|
366
|
+
string="Fiscal Product Genre",
|
|
367
|
+
compute="_compute_product_fiscal_fields",
|
|
368
|
+
store=True,
|
|
369
|
+
readonly=False,
|
|
370
|
+
precompute=True,
|
|
305
371
|
)
|
|
306
372
|
|
|
307
373
|
fiscal_genre_code = fields.Char(
|
|
@@ -312,10 +378,18 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
312
378
|
comodel_name="l10n_br_fiscal.service.type",
|
|
313
379
|
string="Service Type LC 166",
|
|
314
380
|
domain="[('internal_type', '=', 'normal')]",
|
|
381
|
+
compute="_compute_product_fiscal_fields",
|
|
382
|
+
store=True,
|
|
383
|
+
readonly=False,
|
|
384
|
+
precompute=True,
|
|
315
385
|
)
|
|
316
386
|
|
|
317
387
|
city_taxation_code_id = fields.Many2one(
|
|
318
|
-
comodel_name="l10n_br_fiscal.city.taxation.code",
|
|
388
|
+
comodel_name="l10n_br_fiscal.city.taxation.code",
|
|
389
|
+
compute="_compute_city_taxation_code_id",
|
|
390
|
+
store=True,
|
|
391
|
+
readonly=False,
|
|
392
|
+
precompute=True,
|
|
319
393
|
)
|
|
320
394
|
|
|
321
395
|
partner_order = fields.Char(string="Partner Order (xPed)", size=15)
|
|
@@ -335,7 +409,10 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
335
409
|
|
|
336
410
|
issqn_fg_city_id = fields.Many2one(
|
|
337
411
|
comodel_name="res.city",
|
|
412
|
+
related="city_taxation_code_id.city_id",
|
|
338
413
|
string="ISSQN City",
|
|
414
|
+
store=True,
|
|
415
|
+
precompute=True,
|
|
339
416
|
)
|
|
340
417
|
|
|
341
418
|
# vDeducao
|
|
@@ -484,7 +561,6 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
484
561
|
icms_base_type = fields.Selection(
|
|
485
562
|
selection=ICMS_BASE_TYPE,
|
|
486
563
|
string="ICMS Base Type",
|
|
487
|
-
default=ICMS_BASE_TYPE_DEFAULT,
|
|
488
564
|
compute="_compute_tax_fields",
|
|
489
565
|
store=True,
|
|
490
566
|
precompute=True,
|
|
@@ -492,7 +568,12 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
492
568
|
)
|
|
493
569
|
|
|
494
570
|
icms_origin = fields.Selection(
|
|
495
|
-
selection=ICMS_ORIGIN,
|
|
571
|
+
selection=ICMS_ORIGIN,
|
|
572
|
+
string="ICMS Origin",
|
|
573
|
+
compute="_compute_product_fiscal_fields",
|
|
574
|
+
store=True,
|
|
575
|
+
readonly=False,
|
|
576
|
+
precompute=True,
|
|
496
577
|
)
|
|
497
578
|
|
|
498
579
|
# vBC - Valor da base de cálculo do ICMS
|
|
@@ -566,7 +647,6 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
566
647
|
icmsst_base_type = fields.Selection(
|
|
567
648
|
selection=ICMS_ST_BASE_TYPE,
|
|
568
649
|
string="ICMS ST Base Type",
|
|
569
|
-
default=ICMS_ST_BASE_TYPE_DEFAULT,
|
|
570
650
|
compute="_compute_tax_fields",
|
|
571
651
|
store=True,
|
|
572
652
|
precompute=True,
|
|
@@ -862,7 +942,6 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
862
942
|
ipi_base_type = fields.Selection(
|
|
863
943
|
selection=TAX_BASE_TYPE,
|
|
864
944
|
string="IPI Base Type",
|
|
865
|
-
default=TAX_BASE_TYPE_PERCENT,
|
|
866
945
|
compute="_compute_tax_fields",
|
|
867
946
|
store=True,
|
|
868
947
|
precompute=True,
|
|
@@ -986,7 +1065,6 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
986
1065
|
cofins_base_type = fields.Selection(
|
|
987
1066
|
selection=TAX_BASE_TYPE,
|
|
988
1067
|
string="COFINS Base Type",
|
|
989
|
-
default=TAX_BASE_TYPE_PERCENT,
|
|
990
1068
|
compute="_compute_tax_fields",
|
|
991
1069
|
store=True,
|
|
992
1070
|
precompute=True,
|
|
@@ -1063,7 +1141,6 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
1063
1141
|
cofinsst_base_type = fields.Selection(
|
|
1064
1142
|
selection=TAX_BASE_TYPE,
|
|
1065
1143
|
string="COFINS ST Base Type",
|
|
1066
|
-
default=TAX_BASE_TYPE_PERCENT,
|
|
1067
1144
|
compute="_compute_tax_fields",
|
|
1068
1145
|
store=True,
|
|
1069
1146
|
precompute=True,
|
|
@@ -1115,7 +1192,6 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
1115
1192
|
cofins_wh_base_type = fields.Selection(
|
|
1116
1193
|
selection=TAX_BASE_TYPE,
|
|
1117
1194
|
string="COFINS WH Base Type",
|
|
1118
|
-
default=TAX_BASE_TYPE_PERCENT,
|
|
1119
1195
|
compute="_compute_tax_fields",
|
|
1120
1196
|
store=True,
|
|
1121
1197
|
precompute=True,
|
|
@@ -1184,7 +1260,6 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
1184
1260
|
pis_base_type = fields.Selection(
|
|
1185
1261
|
selection=TAX_BASE_TYPE,
|
|
1186
1262
|
string="PIS Base Type",
|
|
1187
|
-
default=TAX_BASE_TYPE_PERCENT,
|
|
1188
1263
|
compute="_compute_tax_fields",
|
|
1189
1264
|
store=True,
|
|
1190
1265
|
precompute=True,
|
|
@@ -1261,7 +1336,6 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
1261
1336
|
pisst_base_type = fields.Selection(
|
|
1262
1337
|
selection=TAX_BASE_TYPE,
|
|
1263
1338
|
string="PIS ST Base Type",
|
|
1264
|
-
default=TAX_BASE_TYPE_PERCENT,
|
|
1265
1339
|
compute="_compute_tax_fields",
|
|
1266
1340
|
store=True,
|
|
1267
1341
|
precompute=True,
|
|
@@ -1313,7 +1387,6 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
1313
1387
|
pis_wh_base_type = fields.Selection(
|
|
1314
1388
|
selection=TAX_BASE_TYPE,
|
|
1315
1389
|
string="PIS WH Base Type",
|
|
1316
|
-
default=TAX_BASE_TYPE_PERCENT,
|
|
1317
1390
|
compute="_compute_tax_fields",
|
|
1318
1391
|
store=True,
|
|
1319
1392
|
precompute=True,
|
|
@@ -1625,23 +1698,30 @@ class FiscalDocumentLineMixin(models.AbstractModel):
|
|
|
1625
1698
|
comodel_name="l10n_br_fiscal.comment",
|
|
1626
1699
|
string="Comments",
|
|
1627
1700
|
domain=[("object", "=", FISCAL_COMMENT_LINE)],
|
|
1628
|
-
compute="
|
|
1701
|
+
compute="_compute_comment_ids",
|
|
1629
1702
|
store=True,
|
|
1630
1703
|
precompute=True,
|
|
1631
1704
|
readonly=False,
|
|
1632
1705
|
)
|
|
1633
1706
|
|
|
1634
|
-
additional_data = fields.Text()
|
|
1635
|
-
|
|
1636
1707
|
manual_additional_data = fields.Text(
|
|
1637
1708
|
help="Additional data manually entered by user"
|
|
1638
1709
|
)
|
|
1639
1710
|
|
|
1640
|
-
estimate_tax = fields.Monetary(
|
|
1711
|
+
estimate_tax = fields.Monetary(
|
|
1712
|
+
compute="_compute_tax_fields",
|
|
1713
|
+
store=True,
|
|
1714
|
+
precompute=True,
|
|
1715
|
+
readonly=False,
|
|
1716
|
+
)
|
|
1641
1717
|
|
|
1642
1718
|
cnae_id = fields.Many2one(
|
|
1719
|
+
related="city_taxation_code_id.cnae_id",
|
|
1643
1720
|
comodel_name="l10n_br_fiscal.cnae",
|
|
1644
1721
|
string="CNAE Code",
|
|
1722
|
+
store=True,
|
|
1723
|
+
precompute=True,
|
|
1724
|
+
readonly=False,
|
|
1645
1725
|
)
|
|
1646
1726
|
|
|
1647
1727
|
@api.depends("company_id")
|