Skip to content

Commit f2d3c39

Browse files
authored
Fix login and operation log clearing (#728)
1 parent e45d2d6 commit f2d3c39

File tree

9 files changed

+25
-27
lines changed

9 files changed

+25
-27
lines changed

backend/app/admin/api/v1/log/login_log.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,5 @@ async def delete_login_logs(obj: DeleteLoginLogParam) -> ResponseModel:
5959
],
6060
)
6161
async def delete_all_login_logs() -> ResponseModel:
62-
count = await login_log_service.delete_all()
63-
if count > 0:
64-
return response_base.success()
65-
return response_base.fail()
62+
await login_log_service.delete_all()
63+
return response_base.success()

backend/app/admin/api/v1/log/opera_log.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,5 @@ async def delete_opera_logs(obj: DeleteOperaLogParam) -> ResponseModel:
5959
],
6060
)
6161
async def delete_all_opera_logs() -> ResponseModel:
62-
count = await opera_log_service.delete_all()
63-
if count > 0:
64-
return response_base.success()
65-
return response_base.fail()
62+
await opera_log_service.delete_all()
63+
return response_base.success()

backend/app/admin/crud/crud_login_log.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
#!/usr/bin/env python3
22
# -*- coding: utf-8 -*-
33
from sqlalchemy import Select
4+
from sqlalchemy import delete as sa_delete
45
from sqlalchemy.ext.asyncio import AsyncSession
56
from sqlalchemy_crud_plus import CRUDPlus
67

@@ -51,14 +52,15 @@ async def delete(self, db: AsyncSession, pks: list[int]) -> int:
5152
"""
5253
return await self.delete_model_by_column(db, allow_multiple=True, id__in=pks)
5354

54-
async def delete_all(self, db: AsyncSession) -> int:
55+
@staticmethod
56+
async def delete_all(db: AsyncSession) -> None:
5557
"""
5658
删除所有日志
5759
5860
:param db: 数据库会话
5961
:return:
6062
"""
61-
return await self.delete_model_by_column(db, allow_multiple=True)
63+
await db.execute(sa_delete(LoginLog))
6264

6365

6466
login_log_dao: CRUDLoginLog = CRUDLoginLog(LoginLog)

backend/app/admin/crud/crud_opera_log.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
#!/usr/bin/env python3
22
# -*- coding: utf-8 -*-
33
from sqlalchemy import Select
4+
from sqlalchemy import delete as sa_delete
45
from sqlalchemy.ext.asyncio import AsyncSession
56
from sqlalchemy_crud_plus import CRUDPlus
67

@@ -51,14 +52,15 @@ async def delete(self, db: AsyncSession, pks: list[int]) -> int:
5152
"""
5253
return await self.delete_model_by_column(db, allow_multiple=True, id__in=pks)
5354

54-
async def delete_all(self, db: AsyncSession) -> int:
55+
@staticmethod
56+
async def delete_all(db: AsyncSession) -> None:
5557
"""
5658
删除所有日志
5759
5860
:param db: 数据库会话
5961
:return:
6062
"""
61-
return await self.delete_model_by_column(db, allow_multiple=True)
63+
await db.execute(sa_delete(OperaLog))
6264

6365

6466
opera_log_dao: CRUDOperaLogDao = CRUDOperaLogDao(OperaLog)

backend/app/admin/service/login_log_service.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -83,11 +83,10 @@ async def delete(*, obj: DeleteLoginLogParam) -> int:
8383
return count
8484

8585
@staticmethod
86-
async def delete_all() -> int:
86+
async def delete_all() -> None:
8787
"""清空所有登录日志"""
8888
async with async_db_session.begin() as db:
89-
count = await login_log_dao.delete_all(db)
90-
return count
89+
await login_log_dao.delete_all(db)
9190

9291

9392
login_log_service: LoginLogService = LoginLogService()

backend/app/admin/service/opera_log_service.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,11 +46,10 @@ async def delete(*, obj: DeleteOperaLogParam) -> int:
4646
return count
4747

4848
@staticmethod
49-
async def delete_all() -> int:
49+
async def delete_all() -> None:
5050
"""清空所有操作日志"""
5151
async with async_db_session.begin() as db:
52-
count = await opera_log_dao.delete_all(db)
53-
return count
52+
await opera_log_dao.delete_all(db)
5453

5554

5655
opera_log_service: OperaLogService = OperaLogService()

backend/app/task/tasks/beat.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,11 @@
1414
'schedule': TzAwareCrontab('1'),
1515
},
1616
'清理操作日志': {
17-
'task': 'app.task.tasks.db_log.tasks.delete_db_opera_log',
17+
'task': 'backend.app.task.tasks.db_log.tasks.delete_db_opera_log',
1818
'schedule': TzAwareCrontab('0', '0', day_of_week='6'),
1919
},
2020
'清理登录日志': {
21-
'task': 'app.task.tasks.db_log.tasks.delete_db_login_log',
21+
'task': 'backend.app.task.tasks.db_log.tasks.delete_db_login_log',
2222
'schedule': TzAwareCrontab('0', '0', day_of_month='15'),
2323
},
2424
}

backend/app/task/tasks/db_log/tasks.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,14 @@
66

77

88
@celery_app.task
9-
async def delete_db_opera_log() -> int:
9+
async def delete_db_opera_log() -> str:
1010
"""自动删除数据库操作日志"""
11-
result = await opera_log_service.delete_all()
12-
return result
11+
await opera_log_service.delete_all()
12+
return 'Success'
1313

1414

1515
@celery_app.task
16-
async def delete_db_login_log() -> int:
16+
async def delete_db_login_log() -> str:
1717
"""自动删除数据库登录日志"""
18-
result = await login_log_service.delete_all()
19-
return result
18+
await login_log_service.delete_all()
19+
return 'Success'

uv.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)