From a17ae59d2fccd1db8156ca5286789d0eca91b6ab Mon Sep 17 00:00:00 2001 From: Remi <remi@le-filament.com> Date: Wed, 16 Oct 2019 18:06:53 +0200 Subject: [PATCH] Align with Excel spreadsheet --- models/res_partner.py | 110 +++++++++++++++++++++--------------- models/scop_contribution.py | 2 +- 2 files changed, 64 insertions(+), 48 deletions(-) diff --git a/models/res_partner.py b/models/res_partner.py index 56352de..fee9acf 100644 --- a/models/res_partner.py +++ b/models/res_partner.py @@ -14,16 +14,15 @@ class ScopPartner(models.Model): def _default_country(self): return self.env.ref('base.fr', False) - # Infos générales + # Infos générales - champs non affichés is_cooperative = fields.Boolean("Est une coopérative") - current_user_ur_id = fields.Many2one( 'union.regionale', string="Union Régionale de l'utilisateur", compute='_compute_current_user_ur_id', search='_search_current_user_ur_id') - # Informations organisme + # Informations organisme - champs non affichés id_ur = fields.Char("Identifiant UR") id_riga = fields.Char("Identifiant RIGA") @@ -39,6 +38,7 @@ class ScopPartner(models.Model): track_visibility='onchange', string='Statut projet', index=True) + name = fields.Char(index=True, track_visibility='onchange') cooperative_form_id = fields.Many2one( 'res.partner.cooperative.form', string="Cooperative form", @@ -70,20 +70,22 @@ class ScopPartner(models.Model): # Infos générales / Contact sigle = fields.Char("Sigle") - cedex = fields.Char("Cedex") + street = fields.Char("Rue", track_visibility='onchange') + street2 = fields.Char("Rue 2", track_visibility='onchange') + street3 = fields.Char("Rue 3", track_visibility='onchange') + zip = fields.Char("CP", change_default=True, track_visibility='onchange') + city = fields.Char("Ville", track_visibility='onchange') + cedex = fields.Char("Cedex", track_visibility='onchange') country_id = fields.Many2one('res.country', string='Country', ondelete='restrict', - default=_default_country) + default=_default_country, + track_visibility='onchange') + phone = fields.Char("Téléphone 1", track_visibility='onchange') + mobile = fields.Char("Téléphone 2", track_visibility='onchange') + email = fields.Char("eMail administratif", track_visibility='onchange') facebook = fields.Char("Facebook") linkedin = fields.Char("LinkedIn") twitter = fields.Char("Twitter") - director_ids = fields.One2many( - 'res.partner', 'parent_id', - string='Contacts Dirigeants', - domain=[('active', '=', True), ('mandate_id', '!=', False)]) - other_child_ids = fields.One2many( - 'res.partner', 'parent_id', string='Autres Contacts', - domain=[('active', '=', True), ('mandate_id', '=', False)]) # Infos générales / Suivi UR ur_id = fields.Many2one( @@ -96,7 +98,7 @@ class ScopPartner(models.Model): creation_delegate_id = fields.Many2one( 'res.users', string='Délégué de création', - on_delete='restrict') + on_delete='restrict', track_visibility='onchange') followup_delegate_id = fields.Many2one( 'res.users', string='Délégué de suivi', @@ -125,12 +127,12 @@ class ScopPartner(models.Model): 'res.partner.creation.origin', string="Origine création en coop", domain=[('parent_id', '=', False)], - on_delete='restrict') + on_delete='restrict', track_visibility='onchange') creation_suborigin_id = fields.Many2one( 'res.partner.creation.origin', string="Sous-Origine création en coop", domain=[('child_ids', '=', False)], - on_delete='restrict') + on_delete='restrict', track_visibility='onchange') date_1st_sign = fields.Date( 'Date 1er signature coop', track_visibility='onchange') @@ -170,7 +172,7 @@ class ScopPartner(models.Model): is_seed_scop = fields.Boolean("Est une SCOP d'amorçage") seed_end = fields.Date("Date de fin du dispositif d'amorçage", default=str(datetime.today() + timedelta(2556)), - compute='_compute_seen_end') + compute='_compute_seed_end') is_incubated = fields.Boolean("Est incubé") incubator_id = fields.Many2one( 'res.partner', @@ -179,6 +181,15 @@ class ScopPartner(models.Model): ('organization_subtype_id.name', '=', 'Incubateur')], on_delete='restrict') + # Contacts + director_ids = fields.One2many( + 'res.partner', 'parent_id', + string='Contacts Dirigeants', + domain=[('active', '=', True), ('mandate_id', '!=', False)]) + other_child_ids = fields.One2many( + 'res.partner', 'parent_id', string='Autres Contacts', + domain=[('active', '=', True), ('mandate_id', '=', False)]) + # Partenaires bank_id = fields.Many2one( 'res.partner', @@ -220,25 +231,8 @@ class ScopPartner(models.Model): domain=[('active', '=', True), ('is_company', '=', False)], on_delete='restrict') - # Périodes juridiques - scop_period_ids = fields.One2many( - comodel_name='scop.period', - inverse_name='partner_id', - string="Historique") - - # Période d'adhésion - membership_period_ids = fields.One2many( - comodel_name='scop.membership.period', - inverse_name='partner_id', - string="Périodes d'adhésion") - - # Cotisation - contribution_ids = fields.One2many( - comodel_name='scop.contribution', - inverse_name='partner_id', - string='Cotisations') - # Liste Ministère + # TODO : define what should be done with these fields ? direccte_id = fields.Many2one( 'res.partner', string='DIRECCTE rattachée', @@ -247,18 +241,6 @@ class ScopPartner(models.Model): on_delete='restrict') last_update_status = fields.Date('Dernière mise à jour des statuts') - # Questionnaire - questionnaire_ids = fields.One2many( - comodel_name='scop.questionnaire', - inverse_name='partner_id', - string='Listes Ministère') - - # Liasse fiscale - liasse_fiscale_ids = fields.One2many( - comodel_name='scop.liasse.fiscale', - inverse_name='partner_id', - string='Liasses Fiscales') - # Révisions revision_contract = fields.Date("Date du contrat de révision", track_visibility='onchange') @@ -305,12 +287,46 @@ class ScopPartner(models.Model): inverse_name='partner_id', string='Liste des Révisions') + # Historique + scop_period_ids = fields.One2many( + comodel_name='scop.period', + inverse_name='partner_id', + string="Historique") + + # Période d'adhésion + membership_period_ids = fields.One2many( + comodel_name='scop.membership.period', + inverse_name='partner_id', + string="Périodes d'adhésion") + + # Cotisation + contribution_ids = fields.One2many( + comodel_name='scop.contribution', + inverse_name='partner_id', + string='Cotisations') + is_up_to_date_cg = fields.Boolean("A jour cotisation CG") + is_up_to_date_fede = fields.Boolean("A jour cotisation Fédérations") + is_up_to_date_ur = fields.Boolean("A jour cotisation UR") + + # Questionnaire + questionnaire_ids = fields.One2many( + comodel_name='scop.questionnaire', + inverse_name='partner_id', + string='Listes Ministère') + + # Liasse fiscale + liasse_fiscale_ids = fields.One2many( + comodel_name='scop.liasse.fiscale', + inverse_name='partner_id', + string='Liasses Fiscales') + # Outils financiers financial_tools_ids = fields.One2many( comodel_name='scop.financial.tools', inverse_name='partner_id', string='Outils financiers') + # Champs pour personnes birthyear = fields.Integer("Année de naissance") subscription_ids = fields.One2many( @@ -454,7 +470,7 @@ class ScopPartner(models.Model): company.siren = company.siret[:9] @api.model - def _compute_seen_end(self): + def _compute_seed_end(self): for company in self: if company.date_1st_sign: company.seed_end = company.date_1st_sign + timedelta(2556) diff --git a/models/scop_contribution.py b/models/scop_contribution.py index 7d79afa..eda5218 100644 --- a/models/scop_contribution.py +++ b/models/scop_contribution.py @@ -26,7 +26,7 @@ class ScopContributions(models.Model): amount_paid = fields.Float("Montant réglé") amount_remaining_previous = fields.Float("Mnt Restant cum. à fin N-1") amount_paid_late = fields.Float("Mnt réglé après clôture") - spreading = fields.Selection([(1, 1), (4, 4)], string="Echelonnement") + spreading = fields.Integer("Echelonnement") amount_remaining = fields.Float("Montant Restant") quarter_1 = fields.Date("1er Trim.") quarter_2 = fields.Date("2ème Trim.") -- GitLab