From ea4497c8d2f5b538acf9300c06187e840d46a105 Mon Sep 17 00:00:00 2001 From: rohitwaghchaure Date: Mon, 17 Jul 2017 14:55:42 +0530 Subject: [PATCH] Renamed the report Support Hours to Support Hours Distribution (#9874) --- .../docs/assets/img/support/support_hours.png | Bin 48805 -> 38653 bytes erpnext/patches.txt | 3 +- .../v8_1/removed_report_support_hours.py | 14 +++++++ .../__init__.py | 0 .../support_hour_distribution.js | 22 ++++++++++ .../support_hour_distribution.json} | 8 ++-- .../support_hour_distribution.py} | 32 ++++++++++++-- .../report/support_hours/support_hours.js | 39 ------------------ 8 files changed, 70 insertions(+), 48 deletions(-) create mode 100644 erpnext/patches/v8_1/removed_report_support_hours.py rename erpnext/support/report/{support_hours => support_hour_distribution}/__init__.py (100%) create mode 100644 erpnext/support/report/support_hour_distribution/support_hour_distribution.js rename erpnext/support/report/{support_hours/support_hours.json => support_hour_distribution/support_hour_distribution.json} (69%) rename erpnext/support/report/{support_hours/support_hours.py => support_hour_distribution/support_hour_distribution.py} (70%) delete mode 100644 erpnext/support/report/support_hours/support_hours.js diff --git a/erpnext/docs/assets/img/support/support_hours.png b/erpnext/docs/assets/img/support/support_hours.png index 44cfbbbdaabf9bcd061c46c89043293a74b5cd64..f2603669f998b8b99b1470490f693474f8a25e68 100644 GIT binary patch delta 31200 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 diff --git a/erpnext/patches.txt b/erpnext/patches.txt index f8267df631..16c5a8713e 100644 --- a/erpnext/patches.txt +++ b/erpnext/patches.txt @@ -416,5 +416,6 @@ erpnext.patches.v8_0.update_production_orders erpnext.patches.v8_1.remove_sales_invoice_from_returned_serial_no erpnext.patches.v8_1.allow_invoice_copy_to_edit_after_submit erpnext.patches.v8_1.add_hsn_sac_codes -erpnext.patches.v8_1.update_gst_state +erpnext.patches.v8_1.update_gst_state #17-07-2017 +erpnext.patches.v8_1.removed_report_support_hours erpnext.patches.v8_1.add_indexes_in_transaction_doctypes \ No newline at end of file diff --git a/erpnext/patches/v8_1/removed_report_support_hours.py b/erpnext/patches/v8_1/removed_report_support_hours.py new file mode 100644 index 0000000000..0936b2231b --- /dev/null +++ b/erpnext/patches/v8_1/removed_report_support_hours.py @@ -0,0 +1,14 @@ +# Copyright (c) 2017, Frappe and Contributors +# License: GNU General Public License v3. See license.txt + +from __future__ import unicode_literals +import frappe + +def execute(): + frappe.db.sql(""" update `tabAuto Email Report` set report = %s + where name = %s""", ('Support Hour Distribution', 'Support Hours')) + + frappe.db.sql(""" update `tabCustom Role` set report = %s + where report = %s""", ('Support Hour Distribution', 'Support Hours')) + + frappe.delete_doc('Report', 'Support Hours') \ No newline at end of file diff --git a/erpnext/support/report/support_hours/__init__.py b/erpnext/support/report/support_hour_distribution/__init__.py similarity index 100% rename from erpnext/support/report/support_hours/__init__.py rename to erpnext/support/report/support_hour_distribution/__init__.py diff --git a/erpnext/support/report/support_hour_distribution/support_hour_distribution.js b/erpnext/support/report/support_hour_distribution/support_hour_distribution.js new file mode 100644 index 0000000000..ae30b6a550 --- /dev/null +++ b/erpnext/support/report/support_hour_distribution/support_hour_distribution.js @@ -0,0 +1,22 @@ +// Copyright (c) 2016, Frappe Technologies Pvt. Ltd. and contributors +// For license information, please see license.txt +/* eslint-disable */ + +frappe.query_reports["Support Hour Distribution"] = { + "filters": [ + { + 'lable': __("From Date"), + 'fieldname': 'from_date', + 'fieldtype': 'Date', + 'default': frappe.datetime.nowdate(), + 'reqd': 1 + }, + { + 'lable': __("To Date"), + 'fieldname': 'to_date', + 'fieldtype': 'Date', + 'default': frappe.datetime.nowdate(), + 'reqd': 1 + } + ] +} diff --git a/erpnext/support/report/support_hours/support_hours.json b/erpnext/support/report/support_hour_distribution/support_hour_distribution.json similarity index 69% rename from erpnext/support/report/support_hours/support_hours.json rename to erpnext/support/report/support_hour_distribution/support_hour_distribution.json index 01e4bb44cb..4d0cb865e3 100644 --- a/erpnext/support/report/support_hours/support_hours.json +++ b/erpnext/support/report/support_hour_distribution/support_hour_distribution.json @@ -1,20 +1,20 @@ { "add_total_row": 0, "apply_user_permissions": 1, - "creation": "2017-06-23 14:21:37.558691", + "creation": "2017-07-13 17:14:40.408706", "disabled": 0, "docstatus": 0, "doctype": "Report", "idx": 0, "is_standard": "Yes", "letter_head": "", - "modified": "2017-06-23 16:33:31.211390", + "modified": "2017-07-13 17:14:40.408706", "modified_by": "Administrator", "module": "Support", - "name": "Support Hours", + "name": "Support Hour Distribution", "owner": "Administrator", "ref_doctype": "Issue", - "report_name": "Support Hours", + "report_name": "Support Hour Distribution", "report_type": "Script Report", "roles": [ { diff --git a/erpnext/support/report/support_hours/support_hours.py b/erpnext/support/report/support_hour_distribution/support_hour_distribution.py similarity index 70% rename from erpnext/support/report/support_hours/support_hours.py rename to erpnext/support/report/support_hour_distribution/support_hour_distribution.py index f1606cd646..e96b7b2104 100644 --- a/erpnext/support/report/support_hours/support_hours.py +++ b/erpnext/support/report/support_hour_distribution/support_hour_distribution.py @@ -23,12 +23,14 @@ def execute(filters=None): filters['periodicity'] = 'Daily' columns = get_columns() - data = get_data(filters) - return columns, data + data, timeslot_wise_count = get_data(filters) + chart = get_chartdata(timeslot_wise_count) + return columns, data, None, chart def get_data(filters): start_date = getdate(filters.from_date) data = [] + time_slot_wise_total_count = {} while(start_date <= getdate(filters.to_date)): hours_count = {'date': start_date} for key, value in time_slots.items(): @@ -36,13 +38,14 @@ def get_data(filters): start_time = get_datetime("{0} {1}".format(start_date.strftime("%Y-%m-%d"), start_time)) end_time = get_datetime("{0} {1}".format(start_date.strftime("%Y-%m-%d"), end_time)) hours_count[key] = get_hours_count(start_time, end_time) + time_slot_wise_total_count[key] = time_slot_wise_total_count.get(key, 0) + hours_count[key] if hours_count: data.append(hours_count) start_date = add_to_date(start_date, days=1) - return data + return data, time_slot_wise_total_count def get_hours_count(start_time, end_time): data = frappe.db.sql(""" select count(*) from `tabIssue` where creation @@ -70,4 +73,25 @@ def get_columns(): "width": 120 }) - return columns \ No newline at end of file + return columns + +def get_chartdata(timeslot_wise_count): + x_interval = ['x'] + total_count = ['Total'] + timeslots = ['12AM - 3AM', '3AM - 6AM', '6AM - 9AM', + '9AM - 12PM', '12PM - 3PM', '3PM - 6PM', '6PM - 9PM', '9PM - 12AM'] + + x_interval.extend(timeslots) + columns = [x_interval] + for data in timeslots: + total_count.append(timeslot_wise_count.get(data, 0)) + columns.append(total_count) + + chart = { + "data": { + 'x': 'x', + 'columns': columns + } + } + chart["chart_type"] = "line" + return chart diff --git a/erpnext/support/report/support_hours/support_hours.js b/erpnext/support/report/support_hours/support_hours.js deleted file mode 100644 index 439b7678ee..0000000000 --- a/erpnext/support/report/support_hours/support_hours.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright (c) 2016, Frappe Technologies Pvt. Ltd. and contributors -// For license information, please see license.txt -/* eslint-disable */ - -frappe.query_reports["Support Hours"] = { - "filters": [ - { - 'lable': __("From Date"), - 'fieldname': 'from_date', - 'fieldtype': 'Date', - 'default': frappe.datetime.nowdate(), - 'reqd': 1 - }, - { - 'lable': __("To Date"), - 'fieldname': 'to_date', - 'fieldtype': 'Date', - 'default': frappe.datetime.nowdate(), - 'reqd': 1 - } - ], - get_chart_data: function(columns, result) { - return { - data: { - x: 'Date', - columns: [ - ['Date'].concat($.map(result, function(d) { return d.date; })), - [columns[3].label].concat($.map(result, function(d) { return d[columns[3].label]; })), - [columns[4].label].concat($.map(result, function(d) { return d[columns[4].label]; })), - [columns[5].label].concat($.map(result, function(d) { return d[columns[5].label]; })), - [columns[6].label].concat($.map(result, function(d) { return d[columns[6].label]; })), - [columns[7].label].concat($.map(result, function(d) { return d[columns[7].label]; })) - ] - }, - chart_type: 'bar', - - } - } -}