feat(Asignación de prospectos): Auto-asignar prospectos al operador que lo creó

This commit is contained in:
2024-01-28 16:36:34 -05:00
parent 99de45dd32
commit b1c3b21a9c
4 changed files with 49 additions and 39 deletions

View File

@@ -1,39 +1,35 @@
.. Importaciones::
Importaciones::
.. >>> from proteus import Model, Wizard
.. >>> from trytond.tests.tools import activate_modules
>>> from proteus import Model, Wizard
>>> from trytond.transaction import Transaction
>>> from trytond.tests.tools import activate_modules, set_user
.. Activar módulos::
Activar módulos::
.. >>> config = activate_modules('sale_opportunity_management')
>>> config = activate_modules('sale_opportunity_management')
.. Crear operario::
.. >>> User = Model.get('res.user')
.. >>> operator = User(name="Operario", login="operario")
Crear operario::
>>> User = Model.get('res.user')
>>> operator, = User.find([('name', '=', 'Administrator')])
>>> operator.is_operator = True
>>> operator.save()
>>> set_user(operator.id)
.. Crear prospecto::
Crear prospecto::
.. >>> Prospect = Model.get('sale.prospect')
.. >>> prospect = Prospect()
>>> Prospect = Model.get('sale.prospect')
>>> prospect = Prospect()
.. >>> prospect.name = 'Assignable To Me S.A.S'
.. >>> contact_method = prospect.contact_methods.new(value='123123123', name='Ricardo', job='Infraestructura')
.. >>> prospect.business_unit = 'brigade'
.. >>> prospect.save()
.. .. Opción 1:
.. .. [ Se abre una ventana preguntandole al usuario si quiere asignarse a sí mismo el prospecto recién creado ]
.. .. >>> assign_to_me_wizard = Wizard('sale.prospect.assign_to_me', [prospect])
.. .. >>> assign_to_me_wizard.form.assign_to_me = True
.. .. >>> assign_to_me_wizard.execute('assign_to_me')
>>> prospect.name = 'Assignable To Me S.A.S'
>>> contact_method = prospect.contact_methods.new(value='123123123', name='Ricardo', job='Infraestructura')
>>> prospect.business_unit = 'brigade'
>>> prospect.save()
.. ..Opcion2:
.. .. [Se evalua si el usuario actual es operador, de ser el caso se le asigna este prospecto]
.. [ Se inició seguimiento, asignado al operador que lo creó ]
.. >>> ProspectTrace = Model.get('sale.prospect_trace')
.. >>> prospect_trace, = ProspectTrace.find([('prospect', '=', prospect)])
.. >>> prospect_trace.prospect_assigned_operator.id
.. operator.id
[ Se inició seguimiento, asignado al operador que lo creó ]
>>> ProspectTrace = Model.get('sale.prospect_trace')
>>> prospect_trace, = ProspectTrace.find([('prospect', '=', prospect)])
>>> assigned_operator_id = prospect_trace.prospect_assigned_operator.id
>>> assert operator.id == assigned_operator_id