Select Git revision
account_move.xml
Forked from
Le Filament / Confédération Générale des SCOP / cgscop_cotisation
3 commits behind the upstream repository.
-
Benjamin - Le Filament authoredBenjamin - Le Filament authored
account_move.xml 12.91 KiB
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<!-- Copyright 2020 Le Filament
License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). -->
<data>
<!-- **************************************
Invoices changes for contribution
************************************** -->
<!-- Form -->
<record id="account_move_form_scop_inherited" model="ir.ui.view">
<field name="name">account.move.form.scop.inherited</field>
<field name="model">account.move</field>
<field name="mode">primary</field>
<field name="inherit_id" ref="account.view_move_form" />
<field name="arch" type="xml">
<xpath expr="//div[@name='journal_div']" position="after">
<field
name="partner_ur_id"
readonly="1"
groups="base.group_no_one"
/>
<field
name="is_contribution"
readonly="1"
groups="base.group_no_one"
/>
<field name="year" readonly="1" />
</xpath>
<xpath expr="//sheet/group[last()]" position="after">
<group name="cotisations" string="Cotisations">
<field name="liasse_fiscale_id" readonly="1" />
</group>
</xpath>
<xpath expr="//field[@name='partner_id']" position="attributes">
<attribute name="string">Adhérent</attribute>
</xpath>
<xpath expr="//field[@name='partner_id']" position="after">
<field name="partner_member_number" readonly="1" />
</xpath>
<xpath expr="//field[@name='invoice_date']" position="attributes">
<attribute name="string">Date de cotisation</attribute>
</xpath>
<xpath expr="//field[@name='user_id']" position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
<xpath expr="//field[@name='team_id']" position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
<xpath expr="//field[@name='beneficiary_id']" position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
<xpath expr="//field[@name='team_id']" position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
</field>
</record>
<!-- Tree -->
<record id="account_move_tree_scop_inherited" model="ir.ui.view">
<field name="name">account.move.tree.scop.inherited</field>
<field name="model">account.move</field>
<field name="mode">primary</field>
<field name="inherit_id" ref="account.view_invoice_tree" />
<field name="arch" type="xml">
<xpath
expr="//field[@name='invoice_partner_display_name']"
position="before"
>
<field name="partner_member_number" readonly="1" />
<field
name="invoice_partner_display_name"
string="Adhérent"
optional="show"
/>
<field
name="invoice_date"
string="Date de cotisation"
optional="show"
/>
</xpath>
<xpath expr="//field[@name='invoice_origin']" position="after">
<field name="type_contribution_id" optional="hide" />
<field name="year" optional="hide" />
</xpath>
<xpath expr="//field[@name='activity_ids']" position="attributes">
<attribute name="optional">hide</attribute>
</xpath>
<xpath expr="//field[@name='company_id']" position="attributes">
<attribute name="optional">hide</attribute>
</xpath>
<xpath expr="//field[@name='invoice_origin']" position="attributes">
<attribute name="optional">hide</attribute>
</xpath>
<xpath expr="//field[@name='state']" position="after">
<field name="is_sdd" invisible="1" />
</xpath>
</field>
</record>
<record id="account_move_scop_contribution_refund_tree" model="ir.ui.view">
<field name="name">account.invoice.tree.scop.contribution</field>
<field name="model">account.move</field>
<field name="arch" type="xml">
<tree create="0" edit="0" delete="0">
<field name="name" />
<field name="invoice_date" string="Date d'émission" />
<field name="ref" />
<field name="amount_total_signed" widget="monetary" />
<field name="state" invisible="1" />
</tree>
</field>
</record>
<!-- Search -->
<record id="account_move_search_scop_inherited" model="ir.ui.view">
<field name="name">account.move.search.scop.inherited</field>
<field name="model">account.move</field>
<field name="priority" eval="25" />
<field name="arch" type="xml">
<search string="Search Invoice">
<filter
name="draft"
string="Brouillon"
domain="[('state','=','draft'), ('move_type','in', ['out_invoice', 'out_refund'])]"
/>
<filter
name="unpaid"
string="Non payées"
domain="[('payment_state', 'in', ['not_paid', 'in_payment', 'partial']), ('state', '=', 'posted')]"
/>
<filter
name="paid"
string="Payé"
domain="[('payment_state', '=', 'paid'), ('state', '=', 'posted')]"
/>
<filter
name="late"
string="Retard"
domain="['&', ('invoice_date_due', '<', time.strftime('%Y-%m-%d')), ('state', '=', 'posted'), ('payment_state', 'in', ('not_paid', 'partial'))]"
/>
<separator />
<filter
name="cotiz_equal_zero"
domain="[('amount_total','=',0)]"
string="Cotisation(s) égale(s) à 0"
/>
<separator />
<filter
name="is_sdd"
string="Cotisation au prélèvement"
domain="[('is_sdd', '=', True)]"
/>
<field name="partner_id" operator="child_of" />
<field
name="name"
string="Invoice"
context="{'active_test': False}"
filter_domain="['|','|','|', ('name','ilike',self), ('invoice_origin','ilike',self), ('reference', 'ilike', self), ('partner_id', 'child_of', self)]"
/>
<field name="date" string="Period" />
<group expand="0" string="Group By">
<filter
name="group_by_partner_id"
string="Adhérent"
context="{'group_by':'commercial_partner_id'}"
/>
<filter
name="status"
string="Statut"
context="{'group_by':'state'}"
/>
<separator />
<filter
string="Date de Facturation"
name="invoicedate"
context="{'group_by':'invoice_date'}"
/>
<filter
string="Date d'échéance"
name="duedate"
context="{'group_by':'invoice_date_due'}"
/>
</group>
</search>
</field>
</record>
<!-- Action -->
<record id="account.action_move_out_invoice_type" model="ir.actions.act_window">
<field
name="domain"
eval="[('move_type','=', 'out_invoice'), ('is_contribution', '!=', True)]"
/>
</record>
<record id="account.action_move_out_refund_type" model="ir.actions.act_window">
<field
name="domain"
eval="[('move_type','=', 'out_refund'), ('is_contribution', '!=', True)]"
/>
</record>
<!-- MENUS -->
<menuitem
id="menu_scop_cotisation"
name="Cotisations"
parent="account.menu_finance"
sequence="2"
/>
<!-- **************************************
Move changes for SDD rejected payments
************************************** -->
<!-- Tree View -->
<record id="scop_account_move_tree" model="ir.ui.view">
<field name="name">scop.account.move.tree</field>
<field name="model">account.move</field>
<field name="arch" type="xml">
<tree
decoration-info="state == 'draft'"
string="Pièces comptables"
create="0"
edit="0"
>
<field name="date" />
<field name="name" />
<field name="commercial_partner_id" />
<field name="ref" />
<field name="journal_id" />
<field name="amount_total" sum="Total Amount" />
<field name="reversed_entry_id" />
<field name="reversal_move_id" widget="many2many_tags" />
<field name="payment_reference" optional="hide" />
<button
name="%(account.action_view_account_move_reversal)d"
type="action"
string="Rejeter (extourne)"
class="btn-outline-danger btn-sm"
attrs="{'invisible': [
'|',
'&', ('reversal_move_id', '=', []), ('reversed_entry_id', '!=', False),
'&', ('reversal_move_id', '!=', []), ('reversed_entry_id', '=', False),
]}"
/>
<field
name="state"
widget="badge"
decoration-success="state == 'posted'"
decoration-info="state == 'draft'"
optional="show"
/>
<field
name="payment_state"
widget="badge"
decoration-danger="payment_state == 'not_paid'"
decoration-warning="payment_state in ('partial', 'in_payment')"
decoration-success="payment_state in ('paid', 'reversed')"
attrs="{'invisible': [('payment_state', 'in', ('invoicing_legacy'))]}"
optional="hide"
/>
<field name="partner_id" optional="hide" />
<field name="currency_id" invisible="1" />
</tree>
</field>
</record>
<!-- Search View -->
<record id="scop_account_move_search" model="ir.ui.view">
<field name="name">scop.account.move.search</field>
<field name="model">account.move</field>
<field name="arch" type="xml">
<search string="Pièces comptables">
<field name="commercial_partner_id" string="Adhérent" />
<field name="ref" string="Référence" />
<field name="name" />
<filter
name="rejected"
domain="[('reversed_entry_id', '!=', False)]"
string="Rejetés"
/>
<filter
name="not_rejected"
domain="[('reversed_entry_id', '=', False)]"
string="En cours"
/>
</search>
</field>
</record>
</data>
</odoo>