feat: Se implementa cierre de seguimiento en las pruebas, #64
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed

This commit is contained in:
Camilo Gonzalez 2023-08-30 18:04:27 -05:00
parent 1a469a5106
commit 8c1ed18530
3 changed files with 27 additions and 3 deletions

View File

@ -57,8 +57,11 @@ class ProspectTrace(DeactivableMixin, ModelSQL, ModelView):
cls._buttons.update({
'wizard_schedule': {
'invisible': Eval('state') == 'with_pending_calls',
},
'wizard_make_call': {}
},
'wizard_make_call': {},
'close_trace': {
'invisible': Eval('state') == 'closed'
}
})
@classmethod
@ -77,6 +80,13 @@ class ProspectTrace(DeactivableMixin, ModelSQL, ModelView):
def wizard_make_call(cls, prospect_traces):
pass
@classmethod
@ModelView.button
def close_trace(cls, prospect_traces):
for prospect_trace in prospect_traces:
prospect_trace.state = 'closed'
prospect_trace.save()
def get_rec_name(self, name):
if self.prospect:
return '[' + str(self.id) + '] ' + self.prospect.name

View File

@ -90,5 +90,10 @@ this repository contains the full copyright notices and license terms. -->
<field name="model" search="[('model', '=', 'sale.prospect_trace')]"/>
</record>
<record model="ir.model.button" id="close_trace_button">
<field name="name">close_trace</field>
<field name="string">Close trace</field>
<field name="model" search="[('model', '=', 'sale.prospect_trace')]"/>
</record>
</data>
</tryton>

View File

@ -257,7 +257,7 @@ Programar una próxima llamada pendiente al seguimiento de prospecto::
Crear una llamada agendada previamente::
>>> make_call = Wizard('sale.prospect_trace.make_call', [prospect_trace])
>>> make_call.form.description = 'Fourth call to the prospect'
>>> make_call.form.interest = '4'
>>> make_call.form.interest = '2'
>>> make_call.execute('make_call')
>>> prospect_trace.pending_call
@ -265,6 +265,15 @@ Crear una llamada agendada previamente::
>>> prospect_trace.state
'open'
Hacer llamada y cerrar venta (Seguimiento de prospecto)::
>>> make_call = Wizard('sale.prospect_trace.make_call', [prospect_trace])
>>> make_call.form.description = 'Closed sale'
>>> make_call.form.interest = '4'
>>> make_call.execute('make_call')
>>> prospect_trace.click('close_trace')
>>> prospect_trace.state
'closed'
Reasignar prospectos por operador::
>>> operator2 = User();