def _update_duration(ticket, data, user):
""" Generic update for duration
"""
try:
key = data.keys()[0]
previous = getattr(ticket, key)
data[key.replace('Duration', 'Start')] = datetime.now()
Ticket.objects.filter(pk=ticket.pk).update(**data)
ticket = Ticket.objects.get(pk=ticket.pk)
database.log_action_on_ticket(
ticket=ticket,
action='update_property',
user=user,
property=key.replace('Duration', ''),
previous_value=str(timedelta(seconds=previous)),
new_value=str(timedelta(seconds=getattr(ticket, key)))
)
except (FieldDoesNotExist, FieldError, IntegrityError, TypeError, ValueError) as ex:
raise BadRequest(str(ex.message))
return show(ticket.id, user)
评论列表
文章目录