Initial commit: OCA Financial packages (186 packages)

This commit is contained in:
Ernad Husremovic 2025-08-29 15:43:04 +02:00
commit 3e0e8473fb
8757 changed files with 947473 additions and 0 deletions

View file

@ -0,0 +1,72 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright (C) 2023 Akretion (http://www.akretion.com/)
@author: Mourad EL HADJ MIMOUNE <mourad.elhadj.mimoune@akretion.com>
-->
<odoo>
<record id="ecotax_category_tree" model="ir.ui.view">
<field name="model">account.ecotax.category</field>
<field name="arch" type="xml">
<tree>
<field name="code" />
<field name="name" />
<field name="active" invisible="1" />
</tree>
</field>
</record>
<record id="ecotax_category_form" model="ir.ui.view">
<field name="model">account.ecotax.category</field>
<field name="arch" type="xml">
<form>
<sheet>
<widget
name="web_ribbon"
title="Archived"
bg_color="bg-danger"
attrs="{'invisible': [('active', '=', True)]}"
/>
<div class="oe_title oe_left">
<div class="oe_edit_only">
<label for="name" />
</div>
<h1>
<field name="name" default_focus="1" placeholder="Name" />
</h1>
</div>
<group col="4">
<field name="code" />
<field name="active" invisible="1" />
</group>
</sheet>
</form>
</field>
</record>
<record id="ecotax_category_search" model="ir.ui.view">
<field name="model">account.ecotax.category</field>
<field name="arch" type="xml">
<search string="Search Ecotaxe category">
<field
name="name"
filter_domain="['|', ('name','ilike',self), ('code','ilike',self)]"
string="category"
/>
</search>
</field>
</record>
<record id="action_ecotax_category" model="ir.actions.act_window">
<field name="name">Ecotaxe category</field>
<field name="res_model">account.ecotax.category</field>
<field name="view_mode">tree,form</field>
<field name="help" type="html">
<p class="oe_view_nocontent_create">
Click to start a new Ecotaxe category.
</p>
</field>
</record>
<menuitem
id="menu_ecotax_category"
parent="account.account_account_menu"
action="action_ecotax_category"
sequence="16"
/>
</odoo>

View file

@ -0,0 +1,123 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright (C) 2023 Akretion (http://www.akretion.com/)
@author: Mourad EL HADJ MIMOUNE <mourad.elhadj.mimoune@akretion.com>
-->
<odoo>
<record id="ecotax_classification_tree" model="ir.ui.view">
<field name="model">account.ecotax.classification</field>
<field name="arch" type="xml">
<tree decoration-muted="not active">
<field name="active" invisible="1" />
<field name="code" />
<field name="name" />
<field name="ecotax_type" />
<field
name="ecotax_coef"
attrs="{'invisible': [['ecotax_type', '!=', 'weight_based']]}"
/>
<field
name="default_fixed_ecotax"
attrs="{'invisible': [['ecotax_type', '!=', 'fixed']]}"
/>
<field name="categ_id" />
<field name="product_status" />
</tree>
</field>
</record>
<record id="ecotax_classification_form" model="ir.ui.view">
<field name="model">account.ecotax.classification</field>
<field name="arch" type="xml">
<form>
<sheet>
<widget
name="web_ribbon"
title="Archived"
bg_color="bg-danger"
attrs="{'invisible': [('active', '=', True)]}"
/>
<div class="oe_title oe_left">
<div class="oe_edit_only">
<label for="name" />
</div>
<h1>
<field name="name" default_focus="1" placeholder="Name" />
</h1>
</div>
<group name="Informations" col="4">
<field name="code" />
<field name="categ_id" />
<field name="sector_id" />
<field name="collector_id" />
<field name="product_status" />
<field name="supplier_status" />
<field name="intrastat_code" />
<field name="scale_code" />
<field name="company_id" groups="base.group_multi_company" />
<field name="active" invisible="1" />
</group>
<separator string="Ecotaxes settings" />
<group col="4" name="ecotax_settings">
<field name="ecotax_type" />
<field
name="ecotax_coef"
attrs="{'invisible': [['ecotax_type', '!=', 'weight_based']]}"
/>
<field
name="default_fixed_ecotax"
attrs="{'invisible': [['ecotax_type', '!=', 'fixed']]}"
/>
</group>
</sheet>
</form>
</field>
</record>
<record id="ecotax_classification_search" model="ir.ui.view">
<field name="model">account.ecotax.classification</field>
<field name="arch" type="xml">
<search string="Search Ecotaxe Classification">
<field
name="name"
filter_domain="['|', ('name','ilike',self), ('code','ilike',self)]"
string="Classification"
/>
<filter
name="fixed"
string="Fixed"
domain="[('ecotax_type','=','fixed')]"
icon="terp-camera_test"
/>
<filter
name="weight_based"
string="Weight based"
domain="[('ecotax_type','=','weight_based')]"
icon="terp-dialog-close"
/>
<group expand="0" string="Group By">
<filter
name="type"
string="Type"
context="{'group_by': 'ecotax_type'}"
icon="terp-stock_effects-object-colorize"
/>
</group>
</search>
</field>
</record>
<record id="action_ecotax_classification" model="ir.actions.act_window">
<field name="name">Ecotaxe Classification</field>
<field name="res_model">account.ecotax.classification</field>
<field name="view_mode">tree,form</field>
<field name="help" type="html">
<p class="oe_view_nocontent_create">
Click to start a new Ecotaxe Classification.
</p>
</field>
</record>
<menuitem
id="menu_ecotax_classification"
parent="account.account_account_menu"
action="action_ecotax_classification"
sequence="15"
/>
</odoo>

View file

@ -0,0 +1,174 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright (C) 2023 Akretion (http://www.akretion.com/)
@author: Mourad EL HADJ MIMOUNE <mourad.elhadj.mimoune@akretion.com>
-->
<odoo>
<record id="view_move_form_inherit" model="ir.ui.view">
<field name="model">account.move</field>
<field name="inherit_id" ref="account.view_move_form" />
<field name="arch" type="xml">
<xpath
expr="//field[@name='invoice_line_ids']/tree/field[last()]"
position="after"
>
<field
name="subtotal_ecotax"
optional="show"
attrs="{'invisible': [('parent.move_type', 'not in', ('out_invoice', 'out_refund', 'out_receipt'))]}"
/>
<field
name="ecotax_amount_unit"
optional="hide"
attrs="{'invisible': [('parent.move_type', 'not in', ('out_invoice', 'out_refund', 'out_receipt'))]}"
/>
<button
name="edit_ecotax_lines"
type="object"
string="Ecotax"
attrs="{'invisible': [('parent.move_type', 'not in', ('out_invoice', 'out_refund', 'out_receipt'))]}"
/>
<field name="ecotax_line_ids" invisible="1">
<tree editable="bottom">
<field name="classification_id" />
<field name="force_amount_unit" />
<field name="amount_unit" />
<field name="amount_total" />
</tree>
</field>
</xpath>
<xpath
expr="//field[@name='invoice_line_ids']/form/sheet/field[@name='name']"
position="after"
>
<field
name="ecotax_line_ids"
colspan="2"
attrs="{'invisible': [('parent.move_type', 'not in', ('out_invoice', 'out_refund', 'out_receipt'))]}"
>
<tree editable="bottom">
<field name="classification_id" />
<field name="force_amount_unit" />
<field name="amount_unit" />
<field name="amount_total" />
</tree>
</field>
<field
name="subtotal_ecotax"
attrs="{'invisible': [('parent.move_type', 'not in', ('out_invoice', 'out_refund', 'out_receipt'))]}"
/>
<field
name="ecotax_amount_unit"
attrs="{'invisible': [('parent.move_type', 'not in', ('out_invoice', 'out_refund', 'out_receipt'))]}"
/>
</xpath>
<xpath expr="//field[@name='tax_totals']" position="after">
<field
name="amount_ecotax"
class="oe_subtotal_footer_separator"
attrs="{'invisible': [ '|', ('move_type', 'not in', ('out_invoice', 'out_refund', 'out_receipt')), ('amount_ecotax', '=', 0)]}"
/>
</xpath>
</field>
</record>
<record id="view_move_line_ecotax_form" model="ir.ui.view">
<field name="name">account.move.line.ecotax.form</field>
<field name="model">account.move.line</field>
<field name="arch" type="xml">
<form create="false">
<sheet>
<field name="product_uom_category_id" invisible="1" />
<field name="display_type" invisible="1" />
<field name="parent_state" invisible="1" />
<group>
<field name="partner_id" invisible="1" />
<field name="company_id" invisible="1" />
<field name="debit" invisible="1" />
<field name="credit" invisible="1" />
<field
name="product_id"
widget="many2one_barcode"
readonly="1"
/>
<field name="quantity" readonly="1" />
<field
name="product_uom_id"
groups="uom.group_uom"
readonly="1"
/>
<field name="price_unit" readonly="1" />
<field name="discount" string="Disc.%" readonly="1" />
<field name="currency_id" invisible="1" />
</group>
<group>
<field
name="analytic_line_ids"
groups="analytic.group_analytic_accounting"
widget="many2many_tags"
readonly="1"
/>
<field
name="account_id"
options="{'no_create': True}"
domain="[('company_id', '=', company_id)]"
readonly="1"
/>
<field name="tax_ids" widget="many2many_tags" readonly="1" />
<field
name="analytic_distribution"
groups="analytic.group_analytic_accounting"
readonly="1"
/>
</group>
<label
for="name"
string="Description"
attrs="{'invisible': [('display_type', '!=', False)]}"
/>
<label
for="name"
string="Section"
attrs="{'invisible': [('display_type', '!=', 'line_section')]}"
/>
<label
for="name"
string="Note"
attrs="{'invisible': [('display_type', '!=', 'line_note')]}"
/>
<field name="name" widget="text" readonly="1" />
<notebook>
<page string="Ecotaxe lines" name="ecotax_line">
<field
name="ecotax_line_ids"
nolabel="1"
attrs="{'readonly': [('parent_state', '!=', 'draft')]}"
>
<tree editable="bottom">
<field name="classification_id" />
<field name="force_amount_unit" />
<field name="amount_unit" />
<field
name="amount_total"
sum="Total Ecotaxe"
/>
</tree>
</field>
</page>
</notebook>
<group>
<field
name="price_subtotal"
string="Subtotal"
groups="account.group_show_line_subtotals_tax_excluded"
/>
<field
name="price_total"
string="Total"
groups="account.group_show_line_subtotals_tax_included"
/>
</group>
</sheet>
</form>
</field>
</record>
</odoo>

View file

@ -0,0 +1,72 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright (C) 2023 Akretion (http://www.akretion.com/)
@author: Mourad EL HADJ MIMOUNE <mourad.elhadj.mimoune@akretion.com>
-->
<odoo>
<record id="ecotax_collector_tree" model="ir.ui.view">
<field name="model">ecotax.collector</field>
<field name="arch" type="xml">
<tree>
<field name="name" />
<field name="partner_id" />
<field name="active" invisible="1" />
</tree>
</field>
</record>
<record id="ecotax_collector_form" model="ir.ui.view">
<field name="model">ecotax.collector</field>
<field name="arch" type="xml">
<form>
<sheet>
<widget
name="web_ribbon"
title="Archived"
bg_color="bg-danger"
attrs="{'invisible': [('active', '=', True)]}"
/>
<div class="oe_title oe_left">
<div class="oe_edit_only">
<label for="name" />
</div>
<h1>
<field name="name" default_focus="1" placeholder="Name" />
</h1>
</div>
<group col="4">
<field name="partner_id" />
<field name="active" invisible="1" />
</group>
</sheet>
</form>
</field>
</record>
<record id="ecotax_collector_search" model="ir.ui.view">
<field name="model">ecotax.collector</field>
<field name="arch" type="xml">
<search string="Search Ecotaxe collector">
<field
name="name"
filter_domain="[('name','ilike',self)]"
string="collector"
/>
</search>
</field>
</record>
<record id="action_ecotax_collector" model="ir.actions.act_window">
<field name="name">Ecotaxe collector</field>
<field name="res_model">ecotax.collector</field>
<field name="view_mode">tree,form</field>
<field name="help" type="html">
<p class="oe_view_nocontent_create">
Click to start a new Ecotaxe collector.
</p>
</field>
</record>
<menuitem
id="menu_ecotax_collector"
parent="account.account_account_menu"
action="action_ecotax_collector"
sequence="18"
/>
</odoo>

View file

@ -0,0 +1,70 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright (C) 2023 Akretion (http://www.akretion.com/)
@author: Mourad EL HADJ MIMOUNE <mourad.elhadj.mimoune@akretion.com>
-->
<odoo>
<record id="ecotax_sector_tree" model="ir.ui.view">
<field name="model">ecotax.sector</field>
<field name="arch" type="xml">
<tree>
<field name="name" />
<field name="active" invisible="1" />
</tree>
</field>
</record>
<record id="ecotax_sector_form" model="ir.ui.view">
<field name="model">ecotax.sector</field>
<field name="arch" type="xml">
<form>
<sheet>
<widget
name="web_ribbon"
title="Archived"
bg_color="bg-danger"
attrs="{'invisible': [('active', '=', True)]}"
/>
<div class="oe_title oe_left">
<div class="oe_edit_only">
<label for="name" />
</div>
<h1>
<field name="name" default_focus="1" placeholder="Name" />
</h1>
</div>
<group col="4">
<field name="active" invisible="1" />
</group>
</sheet>
</form>
</field>
</record>
<record id="ecotax_sector_search" model="ir.ui.view">
<field name="model">ecotax.sector</field>
<field name="arch" type="xml">
<search string="Search Ecotaxe sector">
<field
name="name"
filter_domain="[('name','ilike',self)]"
string="sector"
/>
</search>
</field>
</record>
<record id="action_ecotax_sector" model="ir.actions.act_window">
<field name="name">Ecotaxe sector</field>
<field name="res_model">ecotax.sector</field>
<field name="view_mode">tree,form</field>
<field name="help" type="html">
<p class="oe_view_nocontent_create">
Click to start a new Ecotaxe sector.
</p>
</field>
</record>
<menuitem
id="menu_ecotax_sector"
parent="account.account_account_menu"
action="action_ecotax_sector"
sequence="17"
/>
</odoo>

View file

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright (C) 2023 Akretion (http://www.akretion.com/)
@author Mourad EL HADJ MIMOUNE <mourad.elhadj.mimoune@akretion.com>
-->
<odoo>
<record id="product_template_form_view" model="ir.ui.view">
<field name="name">ecotax.base.product.template.form</field>
<field name="model">product.template</field>
<field name="inherit_id" ref="account.product_template_form_view" />
<field name="arch" type="xml">
<group name="properties" position="after">
<group name="ecotax" col="4">
<label
for="ecotax_line_product_ids"
string="Product Template Ecotaxe classif"
/>
<div>
<field name="ecotax_line_product_ids" colspan="2" nolabel="1">
<tree editable="bottom">
<field name="classification_id" />
<field name="force_amount" />
<field name="amount" />
</tree>
</field>
</div>
<field name="ecotax_amount" />
</group>
</group>
</field>
</record>
</odoo>

View file

@ -0,0 +1,94 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright (C) 2023 Akretion (http://www.akretion.com/)
@author Mourad EL HADJ MIMOUNE <mourad.elhadj.mimoune@akretion.com>
-->
<odoo>
<!-- Variants view -->
<record id="product_variant_easy_edit_view" model="ir.ui.view">
<field name="model">product.product</field>
<field name="inherit_id" ref="product.product_variant_easy_edit_view" />
<field name="arch" type="xml">
<group name="tags" position="after">
<group name="ecotax_classif" string="Ecotaxe classification">
<label
for="ecotax_line_product_ids"
string=" Product Template Ecotaxe classif"
/>
<div>
<field
name="ecotax_line_product_ids"
colspan="2"
nolabel="1"
readonly="1"
>
<tree editable="bottom">
<field name="classification_id" />
<field name="force_amount" />
<field name="amount" />
</tree>
</field>
</div>
<label
for="additional_ecotax_line_product_ids"
string="Additional Ecotaxe classif"
/>
<div>
<field
name="additional_ecotax_line_product_ids"
colspan="2"
nolabel="1"
>
<tree editable="bottom">
<field name="classification_id" />
<field name="force_amount" />
<field name="amount" />
</tree>
</field>
</div>
<field name="fixed_ecotax" />
<field name="weight_based_ecotax" />
<field name="ecotax_amount" />
</group>
</group>
</field>
</record>
<record id="product_normal_form_view" model="ir.ui.view">
<field name="name">usability.product.product.form</field>
<field name="model">product.product</field>
<field name="inherit_id" ref="product.product_normal_form_view" />
<field name="arch" type="xml">
<xpath expr="//field[@name='ecotax_line_product_ids']/.." position="after">
<label
for="additional_ecotax_line_product_ids"
string="Additional Ecotaxe classif"
/>
<div>
<field
name="additional_ecotax_line_product_ids"
colspan="2"
nolabel="1"
>
<tree editable="bottom">
<field name="classification_id" />
<field name="force_amount" />
<field name="amount" />
</tree>
</field>
</div>
</xpath>
<xpath expr="//label[@for='standard_price']" position="before">
<label for="all_ecotax_line_product_ids" string="Ecotaxe classif" />
<div>
<field
name="all_ecotax_line_product_ids"
colspan="2"
nolabel="1"
widget="many2many_tags"
>
</field>
</div>
</xpath>
</field>
</record>
</odoo>