diff --git a/__manifest__.py b/__manifest__.py index bf9138e98519f07ff2e1257b69d087c8c70c94cc..e9c465c2aca509b84876bce7374b7947fadc9607 100644 --- a/__manifest__.py +++ b/__manifest__.py @@ -19,22 +19,6 @@ "data": [ "security/security_rules.xml", "security/ir.model.access.csv", - "views/assets.xml", - "wizard/scop_address_wizard.xml", - "wizard/scop_period_wizard.xml", - "wizard/scop_deces_wizard.xml", - "wizard/scop_membership_out_wizard.xml", - "wizard/scop_membership_period_wizard.xml", - "wizard/scop_status_wizard.xml", - "views/res_company.xml", - "views/res_users.xml", - "views/res_partner.xml", - "views/res_partner_cooperative.xml", - "views/scop_config_views.xml", - "views/scop_config_lists_views.xml", - "views/scop_partner_staff.xml", - "views/scop_period_views.xml", - "views/scop_federation_activity.xml", "datas/union_regionale_data.xml", "datas/res_country_state.xml", "datas/res_partner_certification_data.xml", @@ -56,6 +40,22 @@ "datas/scop_membership_reason_end_data.xml", "datas/scop_membership_type_data.xml", "datas/scop_questionnaire_type_data.xml", + "views/assets.xml", + "wizard/scop_address_wizard.xml", + "wizard/scop_period_wizard.xml", + "wizard/scop_deces_wizard.xml", + "wizard/scop_membership_out_wizard.xml", + "wizard/scop_membership_period_wizard.xml", + "wizard/scop_status_wizard.xml", + "views/res_company.xml", + "views/res_users.xml", + "views/res_partner.xml", + "views/res_partner_cooperative.xml", + "views/scop_config_views.xml", + "views/scop_config_lists_views.xml", + "views/scop_partner_staff.xml", + "views/scop_period_views.xml", + "views/scop_federation_activity.xml", ], "installable": True, 'auto_install': False, diff --git a/models/res_partner.py b/models/res_partner.py index d494e89156ff7b28b071b5793a15314e962ff40c..75c28ebcd6b1c7ca06fded6e7b3bb37ba2dcccb5 100644 --- a/models/res_partner.py +++ b/models/res_partner.py @@ -701,7 +701,7 @@ class ScopPartner(models.Model): "Vous devez saisir au moins un e-mail ou un téléphone\ pour " + partner.name) - # Création d'une période lors du changement de statut en Suivi + # Création d'une période lors du changement de statut en Suivi if (vals.get('project_status') == '6_suivi' and not self.env.context.get('import_file')): if not partner.scop_period_ids: @@ -785,7 +785,7 @@ class ScopPartner(models.Model): def _compute_num_departement(self): for company in self: if company.zip: - if company.state_id == self.env.ref('cgscop_partner.domtom'): + if company.state_id == self.env.ref('cgscop_partner.domtom', False): company.zip_departement = company.zip[:3] else: company.zip_departement = company.zip[:2] @@ -850,20 +850,21 @@ class ScopPartner(models.Model): @api.multi def _compute_membership(self): for partner in self: - type_cg = self.env.ref('cgscop_partner.membership_type_1').id - last_membership_period = self.env['scop.membership.period'].search( - [('partner_id', '=', partner.id), - ('type_id', '=', type_cg)], - limit=1, - order='start,id desc') - if (last_membership_period - and not last_membership_period.end): - partner.membership_status = "member" - partner.member_start_stat = last_membership_period.start_stat - partner.member_start = last_membership_period.start - elif (last_membership_period - and last_membership_period.end_reason_id): - partner.membership_status = "out" + if partner.membership_period_ids: + type_cg = self.env.ref('cgscop_partner.membership_type_1').id + last_membership_period = self.env['scop.membership.period'].search( + [('partner_id', '=', partner.id), + ('type_id', '=', type_cg)], + limit=1, + order='start,id desc') + if (last_membership_period + and not last_membership_period.end): + partner.membership_status = "member" + partner.member_start_stat = last_membership_period.start_stat + partner.member_start = last_membership_period.start + elif (last_membership_period + and last_membership_period.end_reason_id): + partner.membership_status = "out" else: partner.membership_status = "not_member" @@ -1153,12 +1154,12 @@ class ScopPartner(models.Model): 'view_type': 'form', 'view_mode': 'tree,form,activity', 'views': [ - (self.env.ref('cgscop_partner.view_partner_cooperative_tree').id, 'tree'), + (self.env.ref('cgscop_partner.view_partner_cooperative_tree').id, 'tree'), (self.env.ref('cgscop_partner.scop_contact_view_form').id, 'form')], 'target': 'current', 'domain': [ ('is_cooperative', '=', True), - ('project_status', '=', '6_suivi')], + ('project_status', '=', '6_suivi')], 'context': mycontext } @@ -1194,13 +1195,13 @@ class ScopPartner(models.Model): 'view_type': 'form', 'view_mode': 'kanban,tree,form,activity', 'views': [ - (self.env.ref('cgscop_partner.view_partner_cooperative_kanban').id, 'kanban'), - (self.env.ref('cgscop_partner.view_partner_prospect_tree').id, 'tree'), + (self.env.ref('cgscop_partner.view_partner_cooperative_kanban').id, 'kanban'), + (self.env.ref('cgscop_partner.view_partner_prospect_tree').id, 'tree'), (self.env.ref('cgscop_partner.scop_contact_view_form').id, 'form')], 'target': 'current', 'domain': [ ('is_cooperative', '=', True), - ('project_status','in',('1_information','2_pre-diagnostic','3_accompagnement','4_adhesion','5_cg','7_abandonne'))], + ('project_status','in',('1_information','2_pre-diagnostic','3_accompagnement','4_adhesion','5_cg','7_abandonne'))], 'context': mycontext } @@ -1236,10 +1237,10 @@ class ScopPartner(models.Model): 'view_type': 'form', 'view_mode': 'tree,form,activity', 'views': [ - (self.env.ref('cgscop_partner.view_partner_prospect_tree').id, 'tree'), + (self.env.ref('cgscop_partner.view_partner_prospect_tree').id, 'tree'), (self.env.ref('cgscop_partner.scop_contact_view_form').id, 'form')], 'target': 'current', - 'domain': [('is_cooperative', '=', True)], + 'domain': [('is_cooperative', '=', True)], 'context': mycontext }