feat: add admin maintenance queue

This commit is contained in:
Lan
2026-06-03 08:18:41 +08:00
parent 3ead1252f4
commit 750265d8a5
2 changed files with 284 additions and 0 deletions
+23
View File
@@ -115,6 +115,16 @@ async def dashboard(file_service: FileService = Depends(get_file_service)):
enable_chunk=settings.enableChunk,
max_save_seconds=settings.max_save_seconds,
)
maintenance_queue = file_service.build_dashboard_maintenance_queue(
health_summary=health_summary,
total_files=len(all_codes),
expired_count=expired_count,
today_size=today_size,
upload_size_limit=settings.uploadSize,
open_upload=settings.openUpload,
enable_chunk=settings.enableChunk,
max_save_seconds=settings.max_save_seconds,
)
text_count = sum(1 for file_code in all_codes if file_code.text is not None)
chunked_count = sum(1 for file_code in all_codes if file_code.is_chunked)
@@ -156,6 +166,12 @@ async def dashboard(file_service: FileService = Depends(get_file_service)):
"operationalInsights": operational_insights,
"operational_insights": operational_insights,
"insights": operational_insights,
"maintenanceQueue": maintenance_queue,
"maintenance_queue": maintenance_queue,
"maintenanceItems": maintenance_queue["items"],
"maintenance_items": maintenance_queue["items"],
"maintenanceSummary": maintenance_queue["summary"],
"maintenance_summary": maintenance_queue["summary"],
"topSuffixes": [
{"suffix": suffix, "count": count}
for suffix, count in suffix_counter.most_common(8)
@@ -170,6 +186,13 @@ async def dashboard(file_service: FileService = Depends(get_file_service)):
)
@admin_api.get("/dashboard/maintenance-queue")
async def dashboard_maintenance_queue(
file_service: FileService = Depends(get_file_service),
):
return APIResponse(detail=await file_service.get_dashboard_maintenance_queue())
@admin_api.get("/activities")
async def admin_activities(
limit: int = 20,