diff --git a/__init__.py b/__init__.py
index f3fc54d..79203eb 100644
--- a/__init__.py
+++ b/__init__.py
@@ -1,6 +1,6 @@
from trytond.pool import Pool
from . import prospect
-from . import prospect_tracker
+from . import prospect_trace
from . import call
__all__ = ['register']
@@ -10,7 +10,8 @@ def register():
Pool.register(
call.Call,
prospect.Prospect,
- prospect_tracker.ProspectTracker,
+ prospect.ContactMethod,
+ prospect_trace.ProspectTrace,
module='sale_opportunity_management', type_='model')
Pool.register(
module='sale_opportunity_management', type_='wizard')
diff --git a/call.py b/call.py
index ea1dcb9..57e2d0a 100644
--- a/call.py
+++ b/call.py
@@ -9,7 +9,7 @@ class Call(ModelSQL, ModelView):
date = fields.Date('Date')
description = fields.Char('Description')
- prospect_tracker = fields.Many2One('sale.prospect_tracker', 'Prospect trace')
+ prospect_trace = fields.Many2One('sale.prospect_trace', 'Prospect track')
@classmethod
def default_date(cls):
diff --git a/doc/es/calls.rst b/doc/es/calls.rst
index e8901e7..0ff7fa2 100644
--- a/doc/es/calls.rst
+++ b/doc/es/calls.rst
@@ -57,8 +57,7 @@ Seguimiento de prospecto 2
* 1 - total desinterés
* 2 - Interés intermedio, brindar mas información
* 3 - Interés alto, generar venta
-
- * Estado (realizada - pendiente)
+
* Seguimiento de prospecto al que pertence
--------
diff --git a/prospect.py b/prospect.py
index d6c7523..820d8cc 100644
--- a/prospect.py
+++ b/prospect.py
@@ -4,8 +4,28 @@ from trytond.model import ModelSQL, ModelView, fields
class Prospect(ModelSQL, ModelView):
'Prospecto'
-
__name__ = 'sale.prospect'
name = fields.Char('Name')
- tel = fields.Integer('Tel')
\ No newline at end of file
+ city = fields.Char('City')
+
+ # Un prospecto (clase actual) se vincula a Muchos mecanismos de contacto (propiedad actual)
+ contact_methods = fields.One2Many('prospect.contact_method', 'prospect', 'Contact methods')
+
+
+class ContactMethod(ModelSQL, ModelView):
+ 'Mecanismo de contacto'
+ __name__ = 'prospect.contact_method'
+
+ _type = [
+ ('phone', 'Phone'),
+ ('mobile', 'Mobile'),
+ ('email', 'Email')
+ ]
+ contact_type = fields.Selection(_type, 'Contact type')
+
+ value = fields.Char('Value')
+
+ # Muchos mecanismos de contacto (clase actual) se vinculan a un prospecto (propiedad actual)
+ prospect = fields.Many2One('sale.prospect', 'Prospect')
+
diff --git a/prospect_trace.py b/prospect_trace.py
index 95d5a68..4506e41 100644
--- a/prospect_trace.py
+++ b/prospect_trace.py
@@ -2,21 +2,21 @@
# this repository contains the full copyright notices and license terms.
from trytond.model import ModelSQL, ModelView, fields
-class ProspectTracker(ModelSQL, ModelView):
+class ProspectTrace(ModelSQL, ModelView):
'Seguimiento de un prospecto'
- __name__ = 'sale.prospect_tracker'
+ __name__ = 'sale.prospect_trace'
prospect = fields.Many2One('sale.prospect', 'Prospect')
prospect_name = fields.Char('Name')
- prospect_tel = fields.Integer('Tel')
+ prospect_contact = fields.Char('Contact')
prospect_city = fields.Char('City')
- calls = fields.One2Many('sale.call', 'prospect_tracker', "Calls")
+ calls = fields.One2Many('sale.call', 'prospect_trace', "Calls")
@fields.depends('prospect')
def on_change_prospect(self):
if self.prospect:
self.prospect_name = self.prospect.name
- self.prospect_tel = self.prospect.tel
+ # self.prospect_contact = self.prospect.contact_methods.index('contact_type 'mobile')
self.prospect_city = self.prospect.city
diff --git a/tests/scenario_sale_opportunity_management.rst b/tests/scenario_sale_opportunity_management.rst
index 2759591..32f0888 100644
--- a/tests/scenario_sale_opportunity_management.rst
+++ b/tests/scenario_sale_opportunity_management.rst
@@ -13,38 +13,43 @@ Activate modules::
>>> config = activate_modules('sale_opportunity_management')
---------------------------------------------------------------------------------------------
-Como administrador quiero poder registrar un prospecto para lugo poder hacerle un seguimiento
+Como administrador quiero registrar un prospecto para lugo poder hacerle un seguimiento
---------------------------------------------------------------------------------------------
+Crear mecanismos de contacto::
+
+
Crear prospecto::
>>> Prospect = Model.get('sale.prospect')
>>> prospect = Prospect()
>>> prospect.name = 'guchito S.A.S'
- >>> prospect.tel = 3123423422
>>> prospect.city = 'Bogotá'
+ >>> phone = prospect.contact_methods.new()
+ >>> phone.contact_type = 'mobile'
+ >>> phone.value = '3132923938'
>>> prospect.save()
+
-----------------------------------------------------------------------------------------
Como operador quiero poder crear un seguimiento de prospecto para luego hacer una llamada
-----------------------------------------------------------------------------------------
Crear seguimiento de prospecto::
- >>> ProspectTracker = Model.get('sale.prospect_tracker')
- >>> prospect_tracker = ProspectTracker()
+ >>> ProspectTrace = Model.get('sale.prospect_trace')
+ >>> prospect_trace = ProspectTrace()
- >>> prospect_tracker.prospect = prospect
- >>> prospect_tracker.save()
+ >>> prospect_trace.prospect = prospect
+ >>> prospect_trace.save()
- >>> prospect_tracker.prospect_name
+ >>> prospect_trace.prospect_name
'guchito S.A.S'
- >>> prospect_tracker.prospect_tel
- 3123423422
- >>> prospect_tracker.prospect_city
+ >>> prospect_trace.prospect_city
+ 'Bogotá'
----------------------------------------------------------------------------
-Como operador quiero poder registrar una llamada para luego generar reportes
+Como operador quiero registrar una llamada para luego generar reportes
----------------------------------------------------------------------------
Crear llamada a un seguimiento de prospecto::
@@ -52,13 +57,11 @@ Crear llamada a un seguimiento de prospecto::
>>> call = Call()
>>> call.description = 'Descripción u observaciones de la llamada'
- >>> call.prospect_tracker = prospect_tracker
+ >>> call.prospect_trace = prospect_trace
>>> call.save()
- >>> call.prospect_tracker.prospect_name
+ >>> call.prospect_trace.prospect_name
'guchito S.A.S'
- >>> call.prospect_tracker.prospect_tel
- 3123423422
>>> call.date == date.today()
True
@@ -67,14 +70,14 @@ Crear otra llamada al mismo seguimiento de prospecto::
>>> call = Call()
>>> call.description = 'Segunda llamada al mismo seguimiento'
- >>> call.prospect_tracker = prospect_tracker
+ >>> call.prospect_trace = prospect_trace
>>> call.save()
- >>> call.prospect_tracker.prospect_name
+ >>> call.prospect_trace.prospect_name
'guchito S.A.S'
- >>> call.prospect_tracker.prospect_tel
- 3123423422
+ >>> call.prospect_trace.prospect_city
+ 'Bogotá'
>>> call.date == date.today()
True
- >>> len(prospect_tracker.calls) == 2
+ >>> len(prospect_trace.calls) == 2
True
\ No newline at end of file
diff --git a/view/call_form.xml b/view/call_form.xml
index e458297..76a00ab 100644
--- a/view/call_form.xml
+++ b/view/call_form.xml
@@ -5,8 +5,8 @@ this repository contains the full copyright notices and license terms. -->
-
-
+
+
diff --git a/view/call_tree.xml b/view/call_tree.xml
index 3227f70..270b568 100644
--- a/view/call_tree.xml
+++ b/view/call_tree.xml
@@ -4,5 +4,5 @@ this repository contains the full copyright notices and license terms. -->
-
+
\ No newline at end of file