mirror of
https://gitea.mueller.network/extern/django-helpdesk.git
synced 2025-02-05 04:50:55 +01:00
Add update_summary_tables
helper function
Reduces complexity of 'run_report' and handles updating summary table in own function
This commit is contained in:
parent
205c69b539
commit
72392a3f50
@ -1578,6 +1578,49 @@ def get_report_table_and_totals(header1, summarytable, possible_options):
|
|||||||
return table, totals
|
return table, totals
|
||||||
|
|
||||||
|
|
||||||
|
def update_summary_tables(report_queryset, report, summarytable, summarytable2):
|
||||||
|
metric3 = False
|
||||||
|
for ticket in report_queryset:
|
||||||
|
if report == 'userpriority':
|
||||||
|
metric1 = u'%s' % ticket.get_assigned_to
|
||||||
|
metric2 = u'%s' % ticket.get_priority_display()
|
||||||
|
|
||||||
|
elif report == 'userqueue':
|
||||||
|
metric1 = u'%s' % ticket.get_assigned_to
|
||||||
|
metric2 = u'%s' % ticket.queue.title
|
||||||
|
|
||||||
|
elif report == 'userstatus':
|
||||||
|
metric1 = u'%s' % ticket.get_assigned_to
|
||||||
|
metric2 = u'%s' % ticket.get_status_display()
|
||||||
|
|
||||||
|
elif report == 'usermonth':
|
||||||
|
metric1 = u'%s' % ticket.get_assigned_to
|
||||||
|
metric2 = u'%s-%s' % (ticket.created.year, ticket.created.month)
|
||||||
|
|
||||||
|
elif report == 'queuepriority':
|
||||||
|
metric1 = u'%s' % ticket.queue.title
|
||||||
|
metric2 = u'%s' % ticket.get_priority_display()
|
||||||
|
|
||||||
|
elif report == 'queuestatus':
|
||||||
|
metric1 = u'%s' % ticket.queue.title
|
||||||
|
metric2 = u'%s' % ticket.get_status_display()
|
||||||
|
|
||||||
|
elif report == 'queuemonth':
|
||||||
|
metric1 = u'%s' % ticket.queue.title
|
||||||
|
metric2 = u'%s-%s' % (ticket.created.year, ticket.created.month)
|
||||||
|
|
||||||
|
elif report == 'daysuntilticketclosedbymonth':
|
||||||
|
metric1 = u'%s' % ticket.queue.title
|
||||||
|
metric2 = u'%s-%s' % (ticket.created.year, ticket.created.month)
|
||||||
|
metric3 = ticket.modified - ticket.created
|
||||||
|
metric3 = metric3.days
|
||||||
|
|
||||||
|
summarytable[metric1, metric2] += 1
|
||||||
|
if metric3:
|
||||||
|
if report == 'daysuntilticketclosedbymonth':
|
||||||
|
summarytable2[metric1, metric2] += metric3
|
||||||
|
|
||||||
|
|
||||||
@helpdesk_staff_member_required
|
@helpdesk_staff_member_required
|
||||||
def run_report(request, report):
|
def run_report(request, report):
|
||||||
|
|
||||||
@ -1663,48 +1706,7 @@ def run_report(request, report):
|
|||||||
col1heading = _('Queue')
|
col1heading = _('Queue')
|
||||||
possible_options = periods
|
possible_options = periods
|
||||||
charttype = 'date'
|
charttype = 'date'
|
||||||
|
update_summary_tables(report_queryset, report, summarytable, summarytable2)
|
||||||
metric3 = False
|
|
||||||
for ticket in report_queryset:
|
|
||||||
if report == 'userpriority':
|
|
||||||
metric1 = u'%s' % ticket.get_assigned_to
|
|
||||||
metric2 = u'%s' % ticket.get_priority_display()
|
|
||||||
|
|
||||||
elif report == 'userqueue':
|
|
||||||
metric1 = u'%s' % ticket.get_assigned_to
|
|
||||||
metric2 = u'%s' % ticket.queue.title
|
|
||||||
|
|
||||||
elif report == 'userstatus':
|
|
||||||
metric1 = u'%s' % ticket.get_assigned_to
|
|
||||||
metric2 = u'%s' % ticket.get_status_display()
|
|
||||||
|
|
||||||
elif report == 'usermonth':
|
|
||||||
metric1 = u'%s' % ticket.get_assigned_to
|
|
||||||
metric2 = u'%s-%s' % (ticket.created.year, ticket.created.month)
|
|
||||||
|
|
||||||
elif report == 'queuepriority':
|
|
||||||
metric1 = u'%s' % ticket.queue.title
|
|
||||||
metric2 = u'%s' % ticket.get_priority_display()
|
|
||||||
|
|
||||||
elif report == 'queuestatus':
|
|
||||||
metric1 = u'%s' % ticket.queue.title
|
|
||||||
metric2 = u'%s' % ticket.get_status_display()
|
|
||||||
|
|
||||||
elif report == 'queuemonth':
|
|
||||||
metric1 = u'%s' % ticket.queue.title
|
|
||||||
metric2 = u'%s-%s' % (ticket.created.year, ticket.created.month)
|
|
||||||
|
|
||||||
elif report == 'daysuntilticketclosedbymonth':
|
|
||||||
metric1 = u'%s' % ticket.queue.title
|
|
||||||
metric2 = u'%s-%s' % (ticket.created.year, ticket.created.month)
|
|
||||||
metric3 = ticket.modified - ticket.created
|
|
||||||
metric3 = metric3.days
|
|
||||||
|
|
||||||
summarytable[metric1, metric2] += 1
|
|
||||||
if metric3:
|
|
||||||
if report == 'daysuntilticketclosedbymonth':
|
|
||||||
summarytable2[metric1, metric2] += metric3
|
|
||||||
|
|
||||||
if report == 'daysuntilticketclosedbymonth':
|
if report == 'daysuntilticketclosedbymonth':
|
||||||
for key in summarytable2.keys():
|
for key in summarytable2.keys():
|
||||||
summarytable[key] = summarytable2[key] / summarytable[key]
|
summarytable[key] = summarytable2[key] / summarytable[key]
|
||||||
|
Loading…
Reference in New Issue
Block a user