улучшенния в коде и исправление ошибок
This commit is contained in:
@@ -452,7 +452,7 @@ async def stats_top_words_callback(callback: CallbackQuery) -> None:
|
||||
|
||||
# Кнопка назад
|
||||
keyboard = InlineKeyboardMarkup(inline_keyboard=[
|
||||
[InlineKeyboardButton(text="◀️ Назад", callback_data="show_stats")]
|
||||
[InlineKeyboardButton(text="◀️ Назад", callback_data="stats:refresh")]
|
||||
])
|
||||
|
||||
try:
|
||||
|
||||
@@ -3,12 +3,12 @@
|
||||
Упрощает использование repository в handlers и middleware.
|
||||
"""
|
||||
from typing import Set, Optional, List, Dict, Any
|
||||
from datetime import datetime
|
||||
from datetime import datetime, timezone
|
||||
|
||||
from middleware.loggers import logger
|
||||
from .database import Database, get_db
|
||||
from .repository import BanWordsRepository
|
||||
from .models import BanWordType, SpamStat, SpamLog
|
||||
from .models import BanWordType, SpamStat, SpamLog, TempBanWord
|
||||
|
||||
from sqlalchemy import select, delete, func, desc
|
||||
|
||||
@@ -478,7 +478,7 @@ class BanWordsManager:
|
||||
- count: количество срабатываний
|
||||
- type: тип проверки
|
||||
"""
|
||||
async with self.session_maker() as session:
|
||||
async with self.db.get_session() as session:
|
||||
try:
|
||||
# Группируем по matched_word и считаем количество
|
||||
query = select(
|
||||
@@ -527,7 +527,7 @@ class BanWordsManager:
|
||||
Returns:
|
||||
int: Количество удалённых слов
|
||||
"""
|
||||
async with self.session_maker() as session:
|
||||
async with self.db.get_session() as session:
|
||||
try:
|
||||
now = datetime.now(timezone.utc)
|
||||
|
||||
@@ -555,7 +555,7 @@ class BanWordsManager:
|
||||
await session.commit()
|
||||
|
||||
# Обновляем кеш
|
||||
await self._reload_cache()
|
||||
await self.refresh_cache()
|
||||
|
||||
# Логируем подробности
|
||||
logger.info(
|
||||
@@ -586,7 +586,7 @@ class BanWordsManager:
|
||||
Returns:
|
||||
int: Количество записей в SpamLog
|
||||
"""
|
||||
async with self.session_maker() as session:
|
||||
async with self.db.get_session() as session:
|
||||
try:
|
||||
query = select(func.count(SpamLog.id))
|
||||
result = await session.execute(query)
|
||||
@@ -606,7 +606,7 @@ class BanWordsManager:
|
||||
Returns:
|
||||
bool: True если успешно
|
||||
"""
|
||||
async with self.session_maker() as session:
|
||||
async with self.db.get_session() as session:
|
||||
try:
|
||||
# Удаляем все записи
|
||||
await session.execute(delete(SpamLog))
|
||||
|
||||
Reference in New Issue
Block a user