chore(ContactMethod): refactor - se centraliza lógica de actualización de colaboradores
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful

This commit is contained in:
Camilo Gonzalez 2023-10-28 20:20:32 -05:00
parent a1d1e019ec
commit f4566b7db4
2 changed files with 8 additions and 2 deletions

View File

@ -54,7 +54,7 @@ class Prospect(ModelSQL, ModelView, DeactivableMixin):
@fields.depends('prospect_trace', 'contact_methods') @fields.depends('prospect_trace', 'contact_methods')
def on_change_contact_methods(self): def on_change_contact_methods(self):
for contact in self.contact_methods: for contact in self.contact_methods:
contact.prospect_trace = self.prospect_trace contact.update_collaborators(changed_from='prospect')
@fields.depends('city', 'department') @fields.depends('city', 'department')
def on_change_city(self): def on_change_city(self):
@ -89,6 +89,12 @@ class ContactMethod(ModelSQL, ModelView):
def default_contact_type(cls): def default_contact_type(cls):
return 'mobile' return 'mobile'
def update_collaborators(self, changed_from):
if (changed_from == 'prospect'):
self.prospect_trace = self.prospect.prospect_trace
if (changed_from == 'prospect_trace'):
self.prospect = self.prospect_trace.prospect
def get_rec_name(self, name): def get_rec_name(self, name):
fields = [self.name, self.job, self.value] fields = [self.name, self.job, self.value]
contact_rec_name = '' contact_rec_name = ''

View File

@ -52,7 +52,7 @@ class ProspectTrace(ModelSQL, ModelView):
@fields.depends('prospect_contacts', 'prospect') @fields.depends('prospect_contacts', 'prospect')
def on_change_prospect_contacts(self): def on_change_prospect_contacts(self):
for contact in self.prospect_contacts: for contact in self.prospect_contacts:
contact.prospect = self.prospect contact.update_collaborators(changed_from='prospect_trace')
@classmethod @classmethod
def __setup__(cls): def __setup__(cls):