Sélectionner une révision Git
res_partner.py 4,11 Kio
# © 2019 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, api
class AutreResPartner(models.Model):
_inherit = "res.partner"
# Particulier
beneficiaire = fields.Boolean(string="Est un bénéficiaire")
societe_id = fields.Many2one('res.partner', string='Société liée')
email_pro = fields.Char(string="E-mail pro")
mobile_pro = fields.Char('Mobile pro')
phone_pro = fields.Char('Téléphone pro')
role = fields.Many2many('res.partner.role', string="Rôle dans l’organisation")
statuts_spe = fields.Many2many('res.partner.statutspe', string="Statuts spécifiques")
ic_referent = fields.Many2one('res.partner', string='IC référent', domain=[('parent_id', '=', 1)])
ic_possibles = fields.Many2many(comodel_name='res.partner', relation='ic_possibles', column1='ic_possible_id', column2='parent_id' ,string='IC possibles', domain=[('active', '=', True), ('parent_id', '=', 1)])
statuts_perso = fields.Selection([
('retraité','retraité'),
('demandeur','demandeur d’emploi'),
('etudiant', 'étudiant'),
('salarie','salarié'),
('apprenti','apprenti'),
('independant','indépendant'),
('milieu_protege','milieu protégé')
], 'Statuts')
dysphasique = fields.Boolean('Personne Dysphasique')
mode_communication = fields.Boolean('Mode de communication')
mode_communication_choix = fields.Many2many('res.partner.com', string="Choix mode de communication")
aide_communication = fields.Boolean('Aide à la communication')
aide_communication_choix = fields.Many2many('res.partner.aide', string="Choix aide à la communication")
suivi_par = fields.Many2many('res.partner.suivi', string="Suivi par")
# Societe
statuts = fields.Many2one('res.partner.statut', string="Statut")
num_of = fields.Char('Numéro OF')
financement = fields.Selection([('direct', 'direct'), ('agfiph', 'AGFIPH'), ('piphfp','PIPHFP'), ('eoth' ,'EOTH')], string='Financement')
preference_email = fields.Boolean('E-mail')
preference_courrier = fields.Boolean('Courrier')
preference_chorus = fields.Boolean('Chorus Pro')
email_fact = fields.Char('Email de facturation')
ref_chorus = fields.Char('Références Chorus')
@api.onchange('company_type')
def onchange_company_type(self):
self.is_company = (self.company_type == 'company')
if self.company_type == 'company':
self.beneficiaire = False
@api.onchange('beneficiaire')
def onchange_beneficiaire(self):
if self.beneficiaire == False:
self.dysphasique = False
self.mode_communication = False
self.mode_communication_choix = False
self.aide_communication = False
self.aide_communication_choix = False
self.suivi_par = False
self.parent_id = False
self.role = False
self.ic_possibles = False
self.ic_referent = False
self.statuts_perso = False
self.statuts_spe = False
else:
self.statuts = False
self.num_of = False
self.financement = False
self.societe_id = False
class AutrementStatut(models.Model):
_description = 'Partner Statut'
_name = 'res.partner.statut'
name = fields.Char(string="Statut", required=True)
class AutrementRole(models.Model):
_description = 'Partner Role'
_name = 'res.partner.role'
name = fields.Char(string="Rôle dans l'organisation", required=True)
class AutrementStatutSpe(models.Model):
_description = 'Partner Statut spécifiques'
_name = 'res.partner.statutspe'
name = fields.Char(string="Statut spécifique", required=True)
class AutrementModeCom(models.Model):
_description = 'Partner Mode de communication'
_name = 'res.partner.com'
name = fields.Char(string="Mode de communication", required=True)
class AutrementAideCom(models.Model):
_description = 'Partner Aide à la communication'
_name = 'res.partner.aide'
name = fields.Char(string="Aide la communication", required=True)
class AutrementSuivi(models.Model):
_description = 'Partner Suivi par'
_name = 'res.partner.suivi'
name = fields.Char(string="Suivi par", required=True)
class AutrementPref(models.Model):
_description = 'Partner Préférence Facturation'
_name = 'res.partner.pref'
name = fields.Char(string="Préférence Facturation", required=True)