diff --git a/models/__init__.py b/models/__init__.py index 9fd9c29e8d9cb589853d8f5070883c0be2088a41..8ac42b99811a8f17700989b1702018208ab0aa9c 100644 --- a/models/__init__.py +++ b/models/__init__.py @@ -1,4 +1,4 @@ # Copyright 2021 Le Filament (<http://www.le-filament.com>) # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -from . import membership_line +from . import res_partner diff --git a/models/membership_line.py b/models/membership_line.py deleted file mode 100644 index 9030c449d11a5b5bd0f0823c5099c336c9c3f29d..0000000000000000000000000000000000000000 --- a/models/membership_line.py +++ /dev/null @@ -1,10 +0,0 @@ -# Copyright 2021 Le Filament (<http://www.le-filament.com>) -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). - -from odoo import models, fields - - -class MembershipLine(models.Model): - _inherit = 'membership.membership_line' - - state = fields.Selection(readonly=False,) diff --git a/models/res_partner.py b/models/res_partner.py new file mode 100644 index 0000000000000000000000000000000000000000..87f0549ca37ea93340fad2d0162a1adc51db4ec5 --- /dev/null +++ b/models/res_partner.py @@ -0,0 +1,39 @@ +# Copyright 2021 Le Filament (<http://www.le-filament.com>) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +from odoo import fields, models, api + + +class ResPartner(models.Model): + _inherit = 'res.partner' + + # Company Fields + membership_number = fields.Integer(string='N° Adhérent') + + # ------------------------------------------------------ + # SQL Constraints + # ------------------------------------------------------ + + # ------------------------------------------------------ + # Default methods + # ------------------------------------------------------ + + # ------------------------------------------------------ + # Computed fields / Search Fields + # ------------------------------------------------------ + + # ------------------------------------------------------ + # Onchange / Constraints + # ------------------------------------------------------ + + # ------------------------------------------------------ + # CRUD methods (ORM overrides) + # ------------------------------------------------------ + + # ------------------------------------------------------ + # Actions + # ------------------------------------------------------ + + # ------------------------------------------------------ + # Business methods + # ------------------------------------------------------ diff --git a/views/res_partner.xml b/views/res_partner.xml new file mode 100644 index 0000000000000000000000000000000000000000..450d1287c0f5e85024559e701f61681ee7d46973 --- /dev/null +++ b/views/res_partner.xml @@ -0,0 +1,33 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright 2021 Le Filament + License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). --> + +<odoo> + <data> + + <!-- Form view --> + <record model="ir.ui.view" id="res_partner_membership_form"> + <field name="name">res.partner.membership.form.inherit</field> + <field name="inherit_id" ref="membership.view_partner_form"/> + <field name="model">res.partner</field> + <field name="arch" type="xml"> + <xpath expr="//page[@name='membership']" position="attributes"> + <attribute name="attrs">{'invisible': [('is_company', '!=', True)]}</attribute> + </xpath> + <xpath expr="//field[@name='free_member']" position="attributes"> + <attribute name="invisible">1</attribute> + </xpath> + <xpath expr="//field[@name='free_member']" position="before"> + <field name="membership_number"/> + </xpath> + <xpath expr="//button[@name='%(membership.action_membership_invoice_view)d']" position="attributes"> + <attribute name="invisible">1</attribute> + </xpath> + <xpath expr="//field[@name='associate_member']" position="attributes"> + <attribute name="invisible">1</attribute> + </xpath> + </field> + </record> + + </data> +</odoo>