From 0619894560fca52096b1f4eb6ce85566b61061eb Mon Sep 17 00:00:00 2001 From: Pranav Raj S Date: Tue, 15 Dec 2020 23:35:03 +0530 Subject: [PATCH] feat: Download Agent wise report (#1517) --- app/javascript/dashboard/api/reports.js | 6 ++++++ .../dashboard/api/specs/reports.spec.js | 1 + .../dashboard/i18n/locale/en/report.json | 1 + .../dashboard/settings/reports/Index.vue | 14 +++++++++++++ .../dashboard/store/modules/reports.js | 13 +++++++++++- .../modules/specs/reports/actions.spec.js | 21 +++++++++++++++++++ .../api/v2/accounts/reports/agents.csv.erb | 5 +++-- config/locales/en.yml | 3 +++ 8 files changed, 61 insertions(+), 3 deletions(-) create mode 100644 app/javascript/dashboard/store/modules/specs/reports/actions.spec.js diff --git a/app/javascript/dashboard/api/reports.js b/app/javascript/dashboard/api/reports.js index 0773c769f..9b7eeaf45 100644 --- a/app/javascript/dashboard/api/reports.js +++ b/app/javascript/dashboard/api/reports.js @@ -17,6 +17,12 @@ class ReportsAPI extends ApiClient { params: { since, until }, }); } + + getAgentReports(since, until) { + return axios.get(`${this.url}/agents`, { + params: { since, until }, + }); + } } export default new ReportsAPI(); diff --git a/app/javascript/dashboard/api/specs/reports.spec.js b/app/javascript/dashboard/api/specs/reports.spec.js index 6d1c5db3e..fabe22c94 100644 --- a/app/javascript/dashboard/api/specs/reports.spec.js +++ b/app/javascript/dashboard/api/specs/reports.spec.js @@ -12,5 +12,6 @@ describe('#Reports API', () => { expect(reports).toHaveProperty('delete'); expect(reports).toHaveProperty('getAccountReports'); expect(reports).toHaveProperty('getAccountSummary'); + expect(reports).toHaveProperty('getAgentReports'); }); }); diff --git a/app/javascript/dashboard/i18n/locale/en/report.json b/app/javascript/dashboard/i18n/locale/en/report.json index 8a4d53485..22e4a1c75 100644 --- a/app/javascript/dashboard/i18n/locale/en/report.json +++ b/app/javascript/dashboard/i18n/locale/en/report.json @@ -3,6 +3,7 @@ "HEADER": "Reports", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", + "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", diff --git a/app/javascript/dashboard/routes/dashboard/settings/reports/Index.vue b/app/javascript/dashboard/routes/dashboard/settings/reports/Index.vue index 58e861392..a89c35603 100644 --- a/app/javascript/dashboard/routes/dashboard/settings/reports/Index.vue +++ b/app/javascript/dashboard/routes/dashboard/settings/reports/Index.vue @@ -1,5 +1,12 @@