From f23d8298b9fe17c23bafe5fc4d0c3a1975233b4e Mon Sep 17 00:00:00 2001 From: MingxuanGame Date: Fri, 22 Aug 2025 09:37:41 +0000 Subject: [PATCH] refactor(stats): move to private-api --- app/router/private/__init__.py | 2 +- app/router/{v2 => private}/stats.py | 0 app/service/enhanced_interval_stats.py | 2 +- app/service/online_status_maintenance.py | 2 +- app/service/online_status_manager.py | 6 +++--- app/service/stats_cleanup.py | 2 +- app/service/stats_scheduler.py | 2 +- app/signalr/hub/spectator.py | 4 ++-- 8 files changed, 10 insertions(+), 10 deletions(-) rename app/router/{v2 => private}/stats.py (100%) diff --git a/app/router/private/__init__.py b/app/router/private/__init__.py index dc291c6..3858f0e 100644 --- a/app/router/private/__init__.py +++ b/app/router/private/__init__.py @@ -1,6 +1,6 @@ from __future__ import annotations -from . import avatar, cover, oauth, relationship, team, username # noqa: F401 +from . import avatar, cover, oauth, relationship, stats, team, username # noqa: F401 from .router import router as private_router __all__ = [ diff --git a/app/router/v2/stats.py b/app/router/private/stats.py similarity index 100% rename from app/router/v2/stats.py rename to app/router/private/stats.py diff --git a/app/service/enhanced_interval_stats.py b/app/service/enhanced_interval_stats.py index 3da85d7..d8e3bcc 100644 --- a/app/service/enhanced_interval_stats.py +++ b/app/service/enhanced_interval_stats.py @@ -10,7 +10,7 @@ import json from app.dependencies.database import get_redis, get_redis_message from app.log import logger -from app.router.v2.stats import ( +from app.router.private.stats import ( REDIS_ONLINE_HISTORY_KEY, _get_online_users_count, _get_playing_users_count, diff --git a/app/service/online_status_maintenance.py b/app/service/online_status_maintenance.py index f5a3e12..c91f492 100644 --- a/app/service/online_status_maintenance.py +++ b/app/service/online_status_maintenance.py @@ -11,7 +11,7 @@ import asyncio from app.dependencies.database import get_redis from app.log import logger -from app.router.v2.stats import REDIS_PLAYING_USERS_KEY, _redis_exec, get_redis_message +from app.router.private.stats import REDIS_PLAYING_USERS_KEY, _redis_exec, get_redis_message async def maintain_playing_users_online_status(): diff --git a/app/service/online_status_manager.py b/app/service/online_status_manager.py index c5a4236..e01db1f 100644 --- a/app/service/online_status_manager.py +++ b/app/service/online_status_manager.py @@ -10,7 +10,7 @@ from datetime import datetime from app.dependencies.database import get_redis from app.log import logger -from app.router.v2.stats import add_online_user +from app.router.private.stats import add_online_user class OnlineStatusManager: @@ -85,7 +85,7 @@ class OnlineStatusManager: await redis.delete(metadata_key) # 从在线用户集合中移除 - from app.router.v2.stats import remove_online_user + from app.router.private.stats import remove_online_user await remove_online_user(user_id) @@ -124,7 +124,7 @@ class OnlineStatusManager: """ try: from app.dependencies.database import get_redis - from app.router.v2.stats import _get_online_users_count + from app.router.private.stats import _get_online_users_count redis = get_redis() return await _get_online_users_count(redis) diff --git a/app/service/stats_cleanup.py b/app/service/stats_cleanup.py index e83b662..1b93d7b 100644 --- a/app/service/stats_cleanup.py +++ b/app/service/stats_cleanup.py @@ -4,7 +4,7 @@ from datetime import datetime, timedelta from app.dependencies.database import get_redis, get_redis_message from app.log import logger -from app.router.v2.stats import ( +from app.router.private.stats import ( REDIS_ONLINE_USERS_KEY, REDIS_PLAYING_USERS_KEY, _redis_exec, diff --git a/app/service/stats_scheduler.py b/app/service/stats_scheduler.py index 7c72a12..960cb40 100644 --- a/app/service/stats_scheduler.py +++ b/app/service/stats_scheduler.py @@ -4,7 +4,7 @@ import asyncio from datetime import datetime, timedelta from app.log import logger -from app.router.v2.stats import record_hourly_stats, update_registered_users_count +from app.router.private.stats import record_hourly_stats, update_registered_users_count from app.service.enhanced_interval_stats import EnhancedIntervalStatsManager from app.service.stats_cleanup import ( cleanup_stale_online_users, diff --git a/app/signalr/hub/spectator.py b/app/signalr/hub/spectator.py index fce16de..fa40f1e 100644 --- a/app/signalr/hub/spectator.py +++ b/app/signalr/hub/spectator.py @@ -309,7 +309,7 @@ class SpectatorHub(Hub[StoreClientState]): logger.info(f"[SpectatorHub] {client.user_id} began playing {state.beatmap_id}") # Track playing user and maintain online status - from app.router.v2.stats import add_playing_user + from app.router.private.stats import add_playing_user from app.service.online_status_manager import online_status_manager bg_tasks.add_task(add_playing_user, user_id) @@ -376,7 +376,7 @@ class SpectatorHub(Hub[StoreClientState]): await self._end_session(user_id, state, store) # Remove from playing user tracking - from app.router.v2.stats import remove_playing_user + from app.router.private.stats import remove_playing_user bg_tasks.add_task(remove_playing_user, user_id)