19.0 vanilla

This commit is contained in:
Ernad Husremovic 2026-03-09 09:30:07 +01:00
parent ba20ce7443
commit 768b70e05e
2357 changed files with 1057103 additions and 712486 deletions

View file

@ -3,53 +3,57 @@
<data>
<record id="view_tax_tree" model="ir.ui.view">
<field name="name">account.tax.tree</field>
<field name="name">account.tax.list</field>
<field name="model">account.tax</field>
<field name="arch" type="xml">
<tree string="Account Tax" decoration-muted="not active">
<list string="Account Tax" decoration-muted="not active">
<field name="sequence" widget="handle"/>
<field name="name"/>
<field name="description" optional="show"/>
<field name="type_tax_use"/>
<field name="original_tax_ids" widget="many2many_tax_tags" optional="hide"/>
<field name="tax_scope"/>
<field name="description"/>
<field name="invoice_label"/>
<field name="company_id" options="{'no_create': True}" groups="base.group_multi_company"/>
<field name="country_id" optional="hide"/>
<field name="active" widget="boolean_toggle"/>
</tree>
</list>
</field>
</record>
<record id="view_onboarding_tax_tree" model="ir.ui.view">
<field name="name">account.onboarding.tax.tree</field>
<field name="name">account.onboarding.tax.list</field>
<field name="model">account.tax</field>
<field name="inherit_id" ref="account.view_tax_tree" />
<field name="mode">primary</field>
<field name="arch" type="xml">
<xpath expr="//tree" position="attributes">
<xpath expr="//list" position="attributes">
<attribute name="default_order">active desc, type_tax_use desc, amount desc, sequence</attribute>
</xpath>
</field>
</record>
<record id="tax_repartition_line_tree" model="ir.ui.view">
<field name="name">account.tax.repartition.line.tree</field>
<field name="name">account.tax.repartition.line.list</field>
<field name="model">account.tax.repartition.line</field>
<field name="arch" type="xml">
<tree editable="bottom" create="1" delete="1">
<list editable="bottom" create="1" delete="1">
<field name="sequence" widget="handle"/>
<field name="factor_percent" attrs="{'invisible': [('repartition_type', '=', 'base')]}"/>
<field name="factor_percent"
invisible="repartition_type == 'base'"
widget="account_tax_repartition_line_factor_percent"/>
<field name="repartition_type"/>
<field name="account_id" attrs="{'invisible': [('repartition_type', '=', 'base')]}" options="{'no_create': True}"/>
<field name="account_id" invisible="repartition_type == 'base'" options="{'no_create': True}"/>
<field name="tag_ids"
widget="many2many_tags"
options="{'no_create': True}"
domain="tag_ids_domain"/>
<field name="use_in_tax_closing"
optional="hidden"
attrs="{'invisible': [('repartition_type', '=', 'base')]}"/>
<field name="company_id" invisible="1"/>
<field name="tag_ids_domain" invisible="1"/>
</tree>
invisible="repartition_type == 'base'"/>
<field name="company_id" column_invisible="True"/>
<field name="tag_ids_domain" column_invisible="True"/>
</list>
</field>
</record>
@ -57,10 +61,27 @@
<field name="name">account.invoice.line.tax.search</field>
<field name="model">account.tax</field>
<field name="arch" type="xml">
<tree string="Account Tax">
<field name="display_name" string="name"/>
<list string="Account Tax">
<field name="display_name" string="Name"/>
<field name="tax_scope"/>
<field name="description"/>
</tree>
</list>
</field>
</record>
<record id="account_tax_fiscal_position_view_tree" model="ir.ui.view">
<field name="name">account.fiscal.position.tax.list</field>
<field name="model">account.tax</field>
<field name="inherit_id" ref="account.account_tax_view_tree" />
<field name="mode">primary</field>
<field name="priority">20</field>
<field name="arch" type="xml">
<field name="display_name" position="before">
<field name="type_tax_use" />
</field>
<field name="display_name" position="after">
<field name="original_tax_ids" widget="many2many_tax_tags" />
</field>
</field>
</record>
@ -69,22 +90,18 @@
<field name="model">account.tax</field>
<field name="arch" type="xml">
<kanban class="o_kanban_mobile">
<field name="name"/>
<field name="type_tax_use"/>
<field name="tax_scope"/>
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
<div class="row mb4">
<div class="col-6">
<strong><span><t t-esc="record.name.value"/></span></strong>
</div>
<div class="col-6 text-end">
<span class="badge rounded-pill"><t t-esc="record.type_tax_use.value"/></span>
<span class="badge rounded-pill"><t t-esc="record.tax_scope.value"/></span>
</div>
<t t-name="card">
<div class="row mb4">
<div class="col-6">
<field class="fw-bolder" name="name"/>
</div>
<div class="col-6 text-end">
<field class="badge rounded-pill" name="type_tax_use"/>
<field class="badge rounded-pill" name="tax_scope"/>
</div>
</div>
<field class="text-muted" name="description"/>
</t>
</templates>
</kanban>
@ -96,20 +113,26 @@
<field name="model">account.tax</field>
<field name="arch" type="xml">
<search string="Search Taxes">
<field name="name_searchable" string="Name"/>
<field name="name" string="Name"/>
<field name="description"/>
<field name="amount"/>
<field name="company_id" groups="base.group_multi_company"/>
<field name="fiscal_position_ids"/>
<filter string="Sale" name="sale" domain="[('type_tax_use','=','sale')]" />
<filter string="Purchase" name="purchase" domain="[('type_tax_use','=','purchase')]" />
<separator/>
<filter string="Services" name="service" domain="[('tax_scope','=','service')]" />
<filter string="Goods" name="goods" domain="[('tax_scope','=','consu')]" />
<separator/>
<filter string="Domestic" name="domestictax" domain="[('is_domestic', '=', True)]"/>
<separator/>
<filter name="active" string="Active" domain="[('active','=',True)]" help="Show active taxes"/>
<filter name="inactive" string="Inactive" domain="[('active','=',False)]" help="Show inactive taxes"/>
<group string="Group By">
<group>
<filter string="Company" name="company" domain="[]" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
<filter string="Tax Type" name="taxapp" domain="[]" context="{'group_by':'type_tax_use'}"/>
<filter string="Tax Scope" name="taxapp" domain="[]" context="{'group_by':'tax_scope'}"/>
<filter string="Fiscal Position" name="groupfp" domain="[]" context="{'group_by': 'fiscal_position_ids'}"/>
</group>
</search>
</field>
@ -120,7 +143,7 @@
<field name="model">account.tax</field>
<field name="arch" type="xml">
<search string="Search Taxes">
<field name="name" filter_domain="['|', ('name','ilike',self), ('description','ilike',self)]" string="Tax"/>
<field name="name" filter_domain="['|', '|', ('name', 'ilike', self), ('description', 'ilike', self), ('invoice_label', 'ilike', self)]" string="Tax"/>
<field name="company_id" groups="base.group_multi_company"/>
</search>
</field>
@ -140,58 +163,72 @@
<field name="active" widget="boolean_toggle"/>
</group>
<group>
<field name="is_used" invisible="1"/>
<field name="type_tax_use"/>
<field name="tax_scope"/>
<label for="amount" attrs="{'invisible':[('amount_type','not in', ('fixed', 'percent', 'division'))]}"/>
<div attrs="{'invisible':[('amount_type','not in', ('fixed', 'percent', 'division'))]}">
<label for="amount" invisible="amount_type not in ('fixed', 'percent', 'division')"/>
<div invisible="amount_type not in ('fixed', 'percent', 'division')">
<field name="amount" class="oe_inline" nolabel="1"/>
<span class="o_form_label oe_inline" attrs="{'invisible':[('amount_type','=','fixed')]}">%</span>
<span class="o_form_label oe_inline" invisible="amount_type == 'fixed'">%</span>
</div>
<field name="fiscal_position_ids" widget="many2many_tags" placeholder="all"/>
<field name="original_tax_ids"
widget="many2many_tags"
invisible="not display_alternative_taxes_field"
options="{'no_create': True}"
/>
</group>
</group>
<notebook>
<page string="Definition" name="definition">
<div attrs="{'invisible': [('amount_type', '=', 'group')]}">
<group invisible="amount_type == 'group'">
<field name="country_code" invisible="1"/>
<group string="Distribution for Invoices">
<group string="Distribution for Invoices" class="mw-100">
<field name="invoice_repartition_line_ids" nolabel="1" colspan="2"/>
</group>
<group string="Distribution for Refunds">
<group string="Distribution for Refunds" class="mw-100">
<field name="refund_repartition_line_ids" nolabel="1" colspan="2"/>
</group>
</div>
<field name="children_tax_ids" attrs="{'invisible':['|', ('amount_type','!=','group'), ('type_tax_use','=','none')]}" domain="[('type_tax_use','in',('none',type_tax_use)), ('amount_type','!=','group')]">
<tree string="Children Taxes">
</group>
<field name="children_tax_ids" invisible="amount_type != 'group' or type_tax_use == 'none'" domain="[('type_tax_use','in',('none',type_tax_use)), ('amount_type','!=','group')]">
<list string="Children Taxes">
<field name="sequence" widget="handle"/>
<field name="name"/>
<field name="amount_type"/>
<field name="amount"/>
</tree>
</list>
</field>
</page>
<page string="Advanced Options" name="advanced_options">
<group>
<group>
<field name="invoice_label"/>
<field name="description"/>
<field name="tax_group_id" attrs="{'invisible': [('amount_type', '=', 'group')], 'required': [('amount_type', '!=', 'group')]}"/>
<field name="analytic" attrs="{'invisible':[('amount_type','=', 'group')]}" groups="analytic.group_analytic_accounting" />
<field name="tax_group_id" invisible="amount_type == 'group'" required="amount_type != 'group'"/>
<field name="analytic" invisible="amount_type == 'group'" groups="analytic.group_analytic_accounting" />
<field name="company_id" options="{'no_create': True}" groups="base.group_multi_company"/>
<field name="country_id" required="True"/>
<field name="invoice_legal_notes"/>
</group>
<group name="advanced_booleans">
<field name="price_include" attrs="{'invisible':[('amount_type','=', 'group')]}" />
<field name="include_base_amount" attrs="{'invisible':[('amount_type','=', 'group')]}" />
<field name="price_include" invisible="1"/>
<field name="price_include_override"
invisible="amount_type == 'group' or has_negative_factor"
placeholder="Default"
/>
<field name="include_base_amount" invisible="amount_type == 'group'"/>
<field name="is_base_affected"
attrs="{'invisible': ['|', ('amount_type','=', 'group'), ('price_include', '=', True)]}"
invisible="amount_type == 'group' or price_include"
groups="base.group_no_one"/>
<field name="hide_tax_exigibility" invisible="1"/>
<field name="tax_exigibility" widget="radio" attrs="{'invisible':['|', ('amount_type','=', 'group'), ('hide_tax_exigibility', '=', False)]}"/>
<field name="cash_basis_transition_account_id" options="{'no_create': True}" attrs="{'invisible': [('tax_exigibility', '=', 'on_invoice')], 'required': [('tax_exigibility', '=', 'on_payment')]}" groups="account.group_account_readonly"/>
<field name="tax_exigibility" widget="radio" invisible="amount_type == 'group' or not hide_tax_exigibility"/>
<field name="cash_basis_transition_account_id" options="{'no_create': True}" invisible="tax_exigibility == 'on_invoice'" required="tax_exigibility == 'on_payment'" groups="account.group_account_readonly"/>
</group>
</group>
</page>
</notebook>
</sheet>
<chatter/>
</form>
</field>
</record>
@ -199,8 +236,8 @@
<record id="action_tax_form" model="ir.actions.act_window">
<field name="name">Taxes</field>
<field name="res_model">account.tax</field>
<field name="view_mode">tree,kanban,form</field>
<field name="domain" eval="False"/> <!-- Force empty -->
<field name="path">taxes</field>
<field name="view_mode">list,kanban,form</field>
<field name="context">{'search_default_sale': True, 'search_default_purchase': True, 'active_test': False}</field>
<field name="view_id" ref="view_tax_tree"/>
<field name="help" type="html">
@ -217,7 +254,7 @@
<search string="Search Group">
<field name="name"/>
<field name="country_id"/>
<group string="Group By">
<group>
<filter string="Country" name="group_by_country" domain="[]" context="{'group_by': 'country_id'}"/>
</group>
</search>
@ -225,33 +262,23 @@
</record>
<record id="view_tax_group_tree" model="ir.ui.view">
<field name="name">account.tax.group.tree</field>
<field name="name">account.tax.group.list</field>
<field name="model">account.tax.group</field>
<field name="arch" type="xml">
<tree string="Account Tax Group" editable="bottom" create="false">
<list string="Account Tax Group" editable="bottom" open_form_view="True">
<field name="sequence" widget="handle"/>
<field name="name"/>
<field name="country_id"/>
<field name="country_code" invisible="True"/>
<field name="company_id" column_invisible="True"/>
<field name="company_id" groups="base.group_multi_company"/>
<field name="country_code" column_invisible="True"/>
<!--
'force_account_company' context key is used so that the RedirectWarning
potentially raised during tax closing doesn't allow the user choosing
accounts from another company in case the multicompany selector
currently grants access to multiple companies.
-->
<field name="property_tax_payable_account_id"
domain="[('company_id', '=', context['force_account_company'])] if context.get('force_account_company') else []"
/>
<field name="property_tax_receivable_account_id"
domain="[('company_id', '=', context['force_account_company'])] if context.get('force_account_company') else []"
/>
<field name="property_advance_tax_payment_account_id"
domain="[('company_id', '=', context['force_account_company'])] if context.get('force_account_company') else []"
/>
<field name="tax_payable_account_id"/>
<field name="tax_receivable_account_id"/>
<field name="advance_tax_payment_account_id"/>
<field name="preceding_subtotal" optional="hide"/>
</tree>
</list>
</field>
</record>
@ -260,17 +287,20 @@
<field name="model">account.tax.group</field>
<field name="arch" type="xml">
<form string="Account Tax Group">
<field name="company_id" invisible="1"/>
<sheet>
<group>
<group>
<field name="name"/>
<field name="country_id"/>
<field name="company_id" groups="base.group_multi_company"/>
<field name="sequence"/>
<field name="pos_receipt_label" string="Label on PoS Receipts" groups="base.group_no_one"/>
</group>
<group>
<field name="property_tax_payable_account_id"/>
<field name="property_tax_receivable_account_id"/>
<field name="property_advance_tax_payment_account_id"/>
<field name="tax_payable_account_id" domain="[('company_ids', '=', company_id)]"/>
<field name="tax_receivable_account_id" domain="[('company_ids', '=', company_id)]"/>
<field name="advance_tax_payment_account_id" domain="[('company_ids', '=', company_id)]"/>
<field name="preceding_subtotal"/>
</group>
</group>
@ -282,7 +312,7 @@
<record id="action_tax_group" model="ir.actions.act_window">
<field name="name">Tax Groups</field>
<field name="res_model">account.tax.group</field>
<field name="view_mode">tree,form</field>
<field name="view_mode">list,form</field>
<field name="view_id" ref="view_tax_group_tree"/>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">