From 60eda3126d18582d0625a0bc27b852c0dbb54727 Mon Sep 17 00:00:00 2001 From: Alexander Timchenko Date: Sat, 24 Aug 2024 14:29:22 +0300 Subject: [PATCH 1/2] #631: change analytics for external users to field created_at --- src/api/services/analytics.py | 7 +++++-- src/core/depends/api_services.py | 1 + 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/api/services/analytics.py b/src/api/services/analytics.py index e77a8c92..990236a4 100644 --- a/src/api/services/analytics.py +++ b/src/api/services/analytics.py @@ -2,6 +2,7 @@ from src.api.constants import DAYS_NUMBER_FOR_USERS_STATISTIC from src.core.db.repository import UnsubscribeReasonRepository, UserRepository +from src.core.db.repository.external_site_user import ExternalSiteUserRepository class AnalyticsService: @@ -11,9 +12,11 @@ def __init__( self, user_repository: UserRepository, unsubscribe_reason_repository: UnsubscribeReasonRepository, + site_user_repository: ExternalSiteUserRepository, ) -> None: self._user_repository: UserRepository = user_repository self._unsubscribe_reason_repository: UnsubscribeReasonRepository = unsubscribe_reason_repository + self._site_user_repository: ExternalSiteUserRepository = site_user_repository async def get_user_number(self) -> None: return await self._user_repository.count_all() @@ -29,8 +32,8 @@ async def get_added_users_statistic(self, date_limit) -> dict[str, int]: async def get_added_external_users_statistic(self, date_limit) -> dict[str, int]: date_begin = date_limit - timedelta(days=DAYS_NUMBER_FOR_USERS_STATISTIC - 1) - added_external_users = await self._user_repository.get_statistics_by_days( - date_begin, date_limit, "external_signup_date" + added_external_users = await self._site_user_repository.get_statistics_by_days( + date_begin, date_limit, "created_at" ) return added_external_users diff --git a/src/core/depends/api_services.py b/src/core/depends/api_services.py index 41b69872..182b4d2c 100644 --- a/src/core/depends/api_services.py +++ b/src/core/depends/api_services.py @@ -49,6 +49,7 @@ class APIServicesContainer(containers.DeclarativeContainer): AnalyticsService, user_repository=repositories.user_repository, unsubscribe_reason_repository=repositories.unsubscribe_reason_repository, + site_user_repository=repositories.site_user_repository, ) health_check_service = providers.Factory( HealthCheckService, From 865a26c7c2d2c3fc751d4ceb1c8bf6fa7e17ced4 Mon Sep 17 00:00:00 2001 From: Olga Avdeeva Date: Sun, 25 Aug 2024 19:33:49 +0200 Subject: [PATCH 2/2] Change import --- src/api/services/analytics.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/api/services/analytics.py b/src/api/services/analytics.py index 990236a4..dc4fcdbf 100644 --- a/src/api/services/analytics.py +++ b/src/api/services/analytics.py @@ -1,8 +1,7 @@ from datetime import timedelta from src.api.constants import DAYS_NUMBER_FOR_USERS_STATISTIC -from src.core.db.repository import UnsubscribeReasonRepository, UserRepository -from src.core.db.repository.external_site_user import ExternalSiteUserRepository +from src.core.db.repository import ExternalSiteUserRepository, UnsubscribeReasonRepository, UserRepository class AnalyticsService: