From 72ae0cfa22591caf037074835bca55cc447ee3e7 Mon Sep 17 00:00:00 2001 From: camilogs Date: Tue, 19 Sep 2023 15:56:21 -0500 Subject: [PATCH] =?UTF-8?q?feat:=20Se=20hace=20posible=20agregar=20y=20mod?= =?UTF-8?q?ificar=20m=C3=A9todos=20de=20contactos=20desde=20seguimiento=20?= =?UTF-8?q?de=20prospectos,=20closed=20#72?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- prospect_trace.py | 9 +++++++-- tests/scenario_sale_opportunity_management.rst | 6 +++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/prospect_trace.py b/prospect_trace.py index 405391d..2ba4d60 100644 --- a/prospect_trace.py +++ b/prospect_trace.py @@ -24,8 +24,8 @@ class ProspectTrace(ModelSQL, ModelView): 'Business unit', states=_states ) prospect_contacts = fields.One2Many( - 'prospect.contact_method', 'prospect_trace', 'Prospect contacts', - states=_states) + 'prospect.contact_method', 'prospect_trace', + 'Prospect contacts', required=True) prospect_city = fields.Many2One('sale.city', 'City', states=_states) @@ -49,6 +49,11 @@ class ProspectTrace(ModelSQL, ModelView): ], 'State', states=_states) + @fields.depends('prospect_contacts', 'prospect') + def on_change_prospect_contacts(self): + for contact in self.prospect_contacts: + contact.prospect = self.prospect + @classmethod def __setup__(cls): super(ProspectTrace, cls).__setup__() diff --git a/tests/scenario_sale_opportunity_management.rst b/tests/scenario_sale_opportunity_management.rst index 646d3f1..3db9f21 100644 --- a/tests/scenario_sale_opportunity_management.rst +++ b/tests/scenario_sale_opportunity_management.rst @@ -192,6 +192,11 @@ Verificar creación de seguimiento de prospecto:: >>> prospect_trace.prospect_contacts [proteus.Model.get('prospect.contact_method')(1), proteus.Model.get('prospect.contact_method')(2), proteus.Model.get('prospect.contact_method')(3)] +Agregar un método de contacto desde el seguimiento de prospecto:: + >>> contact_method_ = prospect_trace.prospect_contacts.new(value='31231231212', name='Carlos', job='Supervisor') + >>> contact_method_.prospect + proteus.Model.get('sale.prospect')(1) + Crear llamadas a un seguimiento de prospecto:: >>> make_call = Wizard('sale.prospect_trace.make_call', [prospect_trace]) @@ -356,7 +361,6 @@ Crear un usuario de rol administrador:: >>> admin.user_admin == True True - --------