Skip to content
Extraits de code Groupes Projets
Valider 7c89d4ec rédigé par Hugo Trentesaux's avatar Hugo Trentesaux
Parcourir les fichiers

wip

parent b58b5b39
Branches
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -5,7 +5,8 @@
"website": "https://le-filament.com",
"version": "18.0.1.0.0",
"license": "AGPL-3",
"depends": [],
"depends": ["l10n_fr_state", "l10n_fr_department",
"l10n_fr_department_oversea"],
"data": [
"security/ir.model.access.csv",
# datas
......
......@@ -8,12 +8,36 @@ from odoo.exceptions import ValidationError
class ResPartner(models.Model):
_inherit = "res.partner"
# ------------------------------------------------------
# Fields declaration
# ------------------------------------------------------
is_cooperative = fields.Boolean("Est une coopérative")
is_member_cgscop = fields.Boolean("Est adhérent à la CG SCOP")
size_group = fields.Selection(
[("1-5", "1 à 5"), ("5-15", "5 à 15"), ("15-50", "15 à 50"),
("50-100", "50 à 100"), ("+100", "plus de 100")],
string="Tranche d'effectif")
siret = fields.Char(index=True, tracking=True, copy=False)
siren = fields.Char(
string="SIREN",
compute="_compute_siren",
store=True,
readonly=False,
copy=False,
tracking=True
)
# overwrite state to compute it based on department which itself is computed from zip
state_id = fields.Many2one("res.country.state", string='State',
ondelete='restrict',
domain="[('country_id', '=?', country_id)]",
related="country_department_id.state_id",
)
# relations -----
ur_id = fields.Many2one(
comodel_name="union.regionale",
string="Union Régionale",
......@@ -33,6 +57,12 @@ class ResPartner(models.Model):
# Computed fields / Search Fields
# ------------------------------------------------------
@api.depends("siret")
def _compute_siren(self):
for partner in self:
if partner.siret:
partner.siren = partner.siret.replace(" ", "")[0:9]
# ------------------------------------------------------
# Onchange / Constraints
# ------------------------------------------------------
......
......@@ -3,12 +3,12 @@
License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). -->
<odoo>
<!-- View -->
<!-- Form -->
<record id="view_partner_form" model="ir.ui.view">
<field name="name">res.partner.form</field>
<record id="view_partner_form_inherit" model="ir.ui.view">
<field name="name">res.partner.form.inherit</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_form"/>
<field name="mode">primary</field>
<field name="arch" type="xml">
<xpath expr="//h1" position="before">
<span invisible="not is_company">
......@@ -16,6 +16,28 @@
<field name="is_cooperative"/>
</span>
</xpath>
<xpath expr="//h1" position="after">
<group invisible="not is_company">
<group>
<field name="ur_id" invisible="not is_cooperative"/>
<field name="size_group"/>
</group>
</group>
</xpath>
<xpath expr="//field[@name='vat']" position="after">
<field name="siret" readonly="1" widget="CopyClipboardChar"/>
<field name="siren" readonly="1" widget="CopyClipboardChar"/>
</xpath>
<xpath expr="//page[@name='contact_addresses']" position="before">
<page
name="company"
string="Company"
invisible="not is_company"
>
<group>
</group>
</page>
</xpath>
</field>
</record>
......@@ -24,10 +46,11 @@
<field name="name">res.partner.list</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_tree"/>
<field name="mode">primary</field>
<field name="arch" type="xml">
<xpath expr="//field[@name='complete_name']" position="after">
<field name="ur_id" optional="hide"/>
<field name="state_id" optional="hide"/>
<field name="country_department_id" optional="hide"/>
</xpath>
</field>
</record>
......@@ -37,7 +60,6 @@
<field name="name">res.partner.search</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_res_partner_filter"/>
<field name="mode">primary</field>
<field name="arch" type="xml">
<!-- Search -->
<xpath expr="//field[@name='name']" position="after">
......@@ -58,11 +80,8 @@
<!-- </xpath>-->
<!-- Group -->
<xpath expr="//filter[@name='salesperson']" position="before">
<!-- <filter-->
<!-- string="A jour des cotisations"-->
<!-- name="group_ur_id"-->
<!-- context="{'group_by': 'ur_id'}"-->
<!-- />-->
<filter string="Région" name="group_state_id"
context="{'group_by': 'state_id'}"/>
</xpath>
</field>
</record>
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter