Skip to content

Commit

Permalink
[MIG] Migration to 16 l10n_ar_account_withholding
Browse files Browse the repository at this point in the history
  • Loading branch information
maq-adhoc committed Dec 1, 2023
1 parent 7c211a4 commit 04eb4a1
Show file tree
Hide file tree
Showing 12 changed files with 509 additions and 157 deletions.
2 changes: 1 addition & 1 deletion l10n_ar_account_withholding/__manifest__.py
Expand Up @@ -27,7 +27,7 @@
'security/security.xml',
'wizard/res_config_settings_views.xml',
'reports/report_withholding_certificate.xml',
'views/account_payment_group_view.xml',
# 'views/account_payment_group_view.xml',
'views/afip_tabla_ganancias_escala_view.xml',
'views/afip_tabla_ganancias_alicuotasymontos_view.xml',
'views/account_payment_view.xml',
Expand Down
2 changes: 1 addition & 1 deletion l10n_ar_account_withholding/models/account_tax.py
Expand Up @@ -171,7 +171,7 @@ def get_partner_alicuot(self, partner, date):
'|',
('l10n_ar_padron_to_date', '=', False),
('l10n_ar_padron_to_date', '>=', date),
], limit=1)
], limit=1)
from_date = date + relativedelta(day=1)
to_date = date + relativedelta(day=1, days=-1, months=+1)

Expand Down
6 changes: 4 additions & 2 deletions l10n_ar_account_withholding/models/mail_compose_message.py
Expand Up @@ -14,7 +14,8 @@ def _onchange_template_id(self, template_id, composition_mode, model, res_id):
payment = self.env[model].browse(res_id)
if payment.partner_type != 'supplier':
return values
report = self.env.ref('l10n_ar_account_withholding.action_report_withholding_certificate', raise_if_not_found=False)
report = self.env.ref('l10n_ar_account_withholding.action_report_withholding_certificate',
raise_if_not_found=False)
if not report:
return values
attachment_ids = []
Expand All @@ -31,7 +32,8 @@ def _onchange_template_id(self, template_id, composition_mode, model, res_id):
}
attachment_ids.append(self.env['ir.attachment'].create(data_attach).id)
if values.get('value', False) and values['value'].get('attachment_ids', []) or attachment_ids:
values_attachment_ids = values['value'].get('attachment_ids', False) and values['value']['attachment_ids'][0][2] or []
values_attachment_ids = values['value'].get('attachment_ids', False) and \
values['value']['attachment_ids'][0][2] or []
values['value']['attachment_ids'] = [(6, 0, values_attachment_ids + attachment_ids)]

return values
11 changes: 5 additions & 6 deletions l10n_ar_account_withholding/models/res_company.py
@@ -1,16 +1,15 @@
from odoo import models, fields, api, _
# import odoo.tools as tools
from odoo.exceptions import UserError, RedirectWarning
import logging
import json
import requests
import warnings
warnings.filterwarnings("ignore", category=DeprecationWarning)
try:
from pyafipws.iibb import IIBB
except ImportError:
IIBB = None
# from pyafipws.padron import PadronAFIP
from odoo.exceptions import UserError, RedirectWarning
import logging
import json
import requests
# from dateutil.relativedelta import relativedelta
_logger = logging.getLogger(__name__)

Expand Down Expand Up @@ -260,5 +259,5 @@ def get_cordoba_data(self, partner, date):
@api.model
def _process_message_error(self, ws):
message = ws.MensajeError
message = message.replace('<![CDATA[', '').replace(']]/>','')
message = message.replace('<![CDATA[', '').replace(']]/>', '')
raise UserError(_('Padron ARBA: %s - %s (%s)') % (ws.CodigoError, message, ws.TipoError))
6 changes: 3 additions & 3 deletions l10n_ar_account_withholding/views/account_payment_view.xml
Expand Up @@ -7,9 +7,9 @@
<field name="inherit_id" ref="account.view_account_payment_tree"/>
<field name="arch" type="xml">
<tree>
<field name="payment_method_code" invisible="1"/>
<field name="partner_type" invisible="1"/>
<button name="%(action_report_withholding_certificate)d" icon="fa-print " help="Print withholding voucher" type="action" attrs="{'invisible': ['|', ('payment_method_code', '!=', 'withholding'), ('partner_type', '!=', 'supplier')]}"/>
<field name="payment_method_code" column_invisible="True"/>
<field name="partner_type" column_invisible="True"/>
<button name="%(action_report_withholding_certificate)d" icon="fa-print " title="Print withholding voucher" type="action" invisible="payment_method_code != 'withholding' or partner_type != 'supplier'"/>
</tree>
</field>
</record>
Expand Down
2 changes: 1 addition & 1 deletion l10n_ar_account_withholding/views/res_partner_view.xml
Expand Up @@ -7,7 +7,7 @@
<field name="model">res.partner</field>
<field name="arch" type="xml">
<field name="imp_ganancias_padron" position="after">
<field name="default_regimen_ganancias_id" attrs="{'invisible': [('imp_ganancias_padron', 'in', ['EX', 'NC'])]}"/>
<field name="default_regimen_ganancias_id" invisible="imp_ganancias_padron in ['EX', 'NC']"/>
</field>
<group name="others_col_1">
<field name="drei"/>
Expand Down
140 changes: 54 additions & 86 deletions l10n_ar_account_withholding/wizard/res_config_settings_views.xml
@@ -1,110 +1,78 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>

<record model="ir.ui.view" id="res_config_settings_view_form">
<field name="name">res.config.settings.view.form.inherit.l10n_ar_afip_ws</field>
<field name="model">res.config.settings</field>
<field name="inherit_id" ref="l10n_ar.res_config_settings_view_form"/>
<field name="arch" type="xml">
<div id="argentina_localization" position="inside">
<div class="col-xs-12 col-md-6 o_setting_box">
<div class="o_setting_left_pane"/>
<div class="o_setting_right_pane">
<label for="regimenes_ganancias_ids" string="Regímenes de ganancias en los que usualmente retiene"/>
<span class="fa fa-lg fa-building-o" title="Values set here are company-specific." groups="base.group_multi_company"/>
<div class="text-muted">
En los proveedores podrá especificar cualquier régimen, y dicho regímen será utilizado por defecto en los pagos a ese proveedor.
En los pagos podrá solo seleccionar manualemente alguno de los regímenes que defina a continuación.
</div>
<div class="content-group">
<xpath expr="//block[@id='argentina_localization']" position="inside">
<setting id="ganancias_tax" string="Ganacias" company_dependent="1" title="En los proveedores podrá especificar cualquier régimen, y dicho regímen será utilizado por defecto en los pagos a ese proveedor.En los pagos podrá solo seleccionar manualemente alguno de los regímenes que defina a continuación.">
<div class="content-group" invisible="country_code != 'AR'">
<div class="row mt16">
<label for="regimenes_ganancias_ids" class="col-lg-3 o_light_label"/>
<field name="regimenes_ganancias_ids" widget="many2many_tags"/>
</div>
</div>
</div>
<div class="col-xs-12 col-md-6 o_setting_box" id="partner_tax_withholding_amount_type">
<div class="o_setting_left_pane">
<field name="group_partner_tax_withholding_amount_type"/>
</div>
<div class="o_setting_right_pane">
<label for="group_partner_tax_withholding_amount_type"/>
<div class="text-muted">
En la configuración de alícuotas de retenciones/percepciones de cada partner.
Exige definir si la base de cálculo es según el total del comprobante o el valor neto de impuestos. Se utiliza por ej. en Santa Fe donde la base de cálculo para los inscriptios en convenio multilateral se realiza sobre el total (sin descontar impuestos).
</setting>
<setting id="withholding_amount_type" string="withholding amount type" company_dependent="1" title="En la configuración de alícuotas de retenciones/percepciones de cada partner. Exige definir si la base de cálculo es según el total del comprobante o el valor neto de impuestos. Se utiliza por ej. en Santa Fe donde la base de cálculo para los inscriptios en convenio multilateral se realiza sobre el total (sin descontar impuestos).">
<div class="content-group" invisible="country_code != 'AR'">
<div class="row mt16">
<label for="group_partner_tax_withholding_amount_type" class="col-lg-3 o_light_label"/>
<field name="group_partner_tax_withholding_amount_type"/>
</div>
</div>
</div>
<div class="col-xs-12 col-md-6 o_setting_box">
<div class="o_setting_left_pane"/>
<div class="o_setting_right_pane">
<label for="arba_cit" string="ARBA"/>
<span class="fa fa-lg fa-building-o" title="Values set here are company-specific." groups="base.group_multi_company"/>
<div class="text-muted" name="arba_description">
Indique la clave CIT si utiliza padrón de ARBA de ret/perc de iibb.
</setting>
<setting id="arba_cit" string="ARBA" company_dependent="1" title="Indique la clave CIT si utiliza padrón de ARBA de ret/perc de iibb.">
<div class="content-group" invisible="country_code != 'AR'">
<div class="row mt16">
<label for="arba_cit" class="col-lg-3 o_light_label"/>
<field name="arba_cit"/>
</div>
<div class="row mt16">
<label for="arba_alicuota_no_sincripto_retencion" class="col-lg-3 o_light_label"/>
<field name="arba_alicuota_no_sincripto_retencion"/>
</div>
<div class="row mt16">
<label for="arba_alicuota_no_sincripto_percepcion" class="col-lg-3 o_light_label"/>
<field name="arba_alicuota_no_sincripto_percepcion"/>
</div>
<div class="content-group" name="arba-content-group">
<div class="row">
<label for="arba_cit" class="col-md-6 o_light_label" string="Clave CIT"/>
<field name="arba_cit" class="oe_inline" password="True"/>
</div>
<div class="row">
<label for="arba_alicuota_no_sincripto_retencion" class="col-md-6 o_light_label" string="Alícuota retención no inscripto"/>
<field name="arba_alicuota_no_sincripto_retencion" class="oe_inline"/>
</div>
<div class="row">
<label for="arba_alicuota_no_sincripto_percepcion" class="col-md-6 o_light_label" string="Alícuota percepción no inscripto"/>
<field name="arba_alicuota_no_sincripto_percepcion" class="oe_inline"/>
</div>
<div class="mt16">
<button name="l10n_ar_arba_cit_test" type="object" class="oe_link oe_inline" string="⇒ Verificar Clave ARBA"/>
</div>
<div class="row mt16">
<button name="l10n_ar_arba_cit_test" type="object" class="oe_link oe_inline" string="⇒ Verificar Clave ARBA"/>
</div>

</div>
</div>
<div class="col-xs-12 col-md-6 o_setting_box">
<div class="o_setting_left_pane"/>
<div class="o_setting_right_pane">
<label for="agip_padron_type" string="AGIP"/>
<span class="fa fa-lg fa-building-o" title="Values set here are company-specific." groups="base.group_multi_company"/>
<div class="text-muted">
Si es agente de Ret/Perc de AGIP especifique:
</setting>
<setting id="agip_padron_type" string="AGIP" company_dependent="1" title="Si es agente de Ret/Perc de AGIP especifique.">
<div class="content-group" invisible="country_code != 'AR'">
<div class="row mt16">
<label for="agip_padron_type" class="col-lg-3 o_light_label"/>
<field name="agip_padron_type"/>
</div>
<div class="row mt16">
<label for="agip_alicuota_no_sincripto_retencion" class="col-lg-3 o_light_label"/>
<field name="agip_alicuota_no_sincripto_retencion"/>
</div>
<div class="content-group">
<div class="row">
<label for="agip_padron_type" class="col-md-6 o_light_label" string="Padrón a aplicar"/>
<field name="agip_padron_type" class="oe_inline"/>
</div>
<div class="row">
<label for="agip_alicuota_no_sincripto_retencion" class="col-md-6 o_light_label" string="Alícuota retención no inscripto"/>
<field name="agip_alicuota_no_sincripto_retencion" class="oe_inline"/>
</div>
<div class="row">
<label for="agip_alicuota_no_sincripto_percepcion" class="col-md-6 o_light_label" string="Alícuota percepción no inscripto"/>
<field name="agip_alicuota_no_sincripto_percepcion" class="oe_inline"/>
</div>
<div class="row mt16">
<label for="agip_alicuota_no_sincripto_percepcion" class="col-lg-3 o_light_label"/>
<field name="agip_alicuota_no_sincripto_percepcion"/>
</div>
</div>
</div>
<div class="col-xs-12 col-md-6 o_setting_box">
<div class="o_setting_left_pane"/>
<div class="o_setting_right_pane">
<label for="agip_padron_type" string="DGR Córdoba"/>
<span class="fa fa-lg fa-building-o" title="Values set here are company-specific." groups="base.group_multi_company"/>
<div class="text-muted">
Si es agente de Ret/Perc de DGR Córdoba especifique:
</setting>
<setting id="dgr_padron_type" string="DGR Córdoba" company_dependent="1" title="Si es agente de Ret/Perc de DGR Córdoba especifique.">
<div class="content-group" invisible="country_code != 'AR'">
<div class="row mt16">
<label for="cdba_alicuota_no_sincripto_retencion" class="col-lg-3 o_light_label"/>
<field name="cdba_alicuota_no_sincripto_retencion"/>
</div>
<div class="content-group">
<div class="row">
<label for="cdba_alicuota_no_sincripto_retencion" class="col-md-6 o_light_label" string="Alícuota retención no inscripto"/>
<field name="cdba_alicuota_no_sincripto_retencion" class="oe_inline"/>
</div>
<div class="row">
<label for="cdba_alicuota_no_sincripto_percepcion" class="col-md-6 o_light_label" string="Alícuota percepción no inscripto"/>
<field name="cdba_alicuota_no_sincripto_percepcion" class="oe_inline"/>
</div>
<div class="row mt16">
<label for="cdba_alicuota_no_sincripto_percepcion" class="col-lg-3 o_light_label"/>
<field name="cdba_alicuota_no_sincripto_percepcion"/>
</div>
</div>
</div>
</div>
</setting>

</xpath>

</field>
</record>

Expand Down
3 changes: 2 additions & 1 deletion l10n_ar_withholding_ux/models/__init__.py
@@ -1 +1,2 @@
from . import account_payment
from . import account_payment
from . import l10n_ar_payment_withholding

0 comments on commit 04eb4a1

Please sign in to comment.