From 6fa515331dc1c05e84bbd18e333f806c57d2de55 Mon Sep 17 00:00:00 2001 From: 1AhmedYasser <26207361+1AhmedYasser@users.noreply.github.com> Date: Wed, 10 Jun 2026 11:13:48 +0300 Subject: [PATCH] fix(731): Added timezone for chat count --- DSL/Resql/analytics/POST/chat-count-only-chatbot.sql | 2 +- .../analytics/POST/chat-count-with-csa-and-chatbot.sql | 2 +- DSL/Resql/analytics/POST/chat-count-with-csa.sql | 2 +- DSL/Ruuter/analytics/POST/chats/total-count.yml | 7 +++++++ GUI/src/util/api-response-handler.tsx | 3 ++- 5 files changed, 12 insertions(+), 4 deletions(-) diff --git a/DSL/Resql/analytics/POST/chat-count-only-chatbot.sql b/DSL/Resql/analytics/POST/chat-count-only-chatbot.sql index 79ebde1c..9e558fd4 100644 --- a/DSL/Resql/analytics/POST/chat-count-only-chatbot.sql +++ b/DSL/Resql/analytics/POST/chat-count-only-chatbot.sql @@ -20,7 +20,7 @@ csa_ids AS ( ) ) SELECT - DATE_TRUNC(:period, lp.ended) AS time, + DATE_TRUNC(:period, lp.ended AT TIME ZONE :timezone) AT TIME ZONE :timezone AS time, COUNT(*) AS count FROM latest_per_base lp WHERE (:showTest = TRUE OR lp.test = FALSE) diff --git a/DSL/Resql/analytics/POST/chat-count-with-csa-and-chatbot.sql b/DSL/Resql/analytics/POST/chat-count-with-csa-and-chatbot.sql index 01932e19..2875707b 100644 --- a/DSL/Resql/analytics/POST/chat-count-with-csa-and-chatbot.sql +++ b/DSL/Resql/analytics/POST/chat-count-with-csa-and-chatbot.sql @@ -1,6 +1,6 @@ WITH latest_per_base AS ( SELECT DISTINCT ON (c.base_id) - DATE_TRUNC(:period, c.ended) AS time, + DATE_TRUNC(:period, c.ended AT TIME ZONE :timezone) AT TIME ZONE :timezone AS time, c.base_id, c.test, c.end_user_url, diff --git a/DSL/Resql/analytics/POST/chat-count-with-csa.sql b/DSL/Resql/analytics/POST/chat-count-with-csa.sql index 525552a9..91cdf4ac 100644 --- a/DSL/Resql/analytics/POST/chat-count-with-csa.sql +++ b/DSL/Resql/analytics/POST/chat-count-with-csa.sql @@ -6,7 +6,7 @@ WHERE c.status = 'ENDED' ORDER BY c.base_id, c.updated DESC ) SELECT - DATE_TRUNC(:period, lp.ended) AS time, + DATE_TRUNC(:period, lp.ended AT TIME ZONE :timezone) AT TIME ZONE :timezone AS time, COUNT(*) AS count FROM latest_per_base lp WHERE (:showTest = TRUE OR lp.test = FALSE) diff --git a/DSL/Ruuter/analytics/POST/chats/total-count.yml b/DSL/Ruuter/analytics/POST/chats/total-count.yml index e6b32b21..0c635739 100644 --- a/DSL/Ruuter/analytics/POST/chats/total-count.yml +++ b/DSL/Ruuter/analytics/POST/chats/total-count.yml @@ -26,6 +26,9 @@ declaration: - field: showTest type: boolean description: "Body field 'showTest'" + - field: timezone + type: string + description: "Body field 'timezone'" check_for_body: switch: @@ -40,6 +43,7 @@ extract_request_data: period: ${incoming.body.period} urls: ${incoming.body.urls} showTest: ${incoming.body.showTest} + timezone: ${incoming.body.timezone} check_for_required_parameters: switch: @@ -72,6 +76,7 @@ byk: end: ${end} urls: ${urls} showTest: ${showTest} + timezone: ${timezone} result: results assign_byk: @@ -98,6 +103,7 @@ csa: end: ${end} urls: ${urls} showTest: ${showTest} + timezone: ${timezone} result: results assign_csa: @@ -124,6 +130,7 @@ total: end: ${end} urls: ${urls} showTest: ${showTest} + timezone: ${timezone} result: results assign_total: diff --git a/GUI/src/util/api-response-handler.tsx b/GUI/src/util/api-response-handler.tsx index 06c65688..d8fcec3a 100644 --- a/GUI/src/util/api-response-handler.tsx +++ b/GUI/src/util/api-response-handler.tsx @@ -15,7 +15,8 @@ export const fetchChartDataWithSubOptions = async (url: string, config: any, sub period: config?.groupByPeriod ?? 'day', options: config?.options.join(',') ?? '', urls: config?.urls, - showTest: config?.showTest ?? true + showTest: config?.showTest ?? true, + timezone: Intl.DateTimeFormat().resolvedOptions().timeZone, }, });