This commit is contained in:
ddrwode
2026-03-06 13:06:36 +08:00
parent 208e63e6f2
commit 5c7b09cf22
2 changed files with 18 additions and 0 deletions

View File

@@ -295,6 +295,23 @@ def task_list(request):
return api_success(_task_to_dict(task), http_status=http_status.HTTP_201_CREATED)
@api_view(["GET"])
def task_detail(request, task_id: str):
"""
按 task_id 查询单个任务详情。
优先查 Task 表(活跃任务),再查 TaskLog 表(历史记录)。
"""
task = Task.objects.filter(task_id=task_id).first()
if task:
return api_success(_task_to_dict(task))
task_log = TaskLog.objects.filter(task_id=task_id).first()
if task_log:
return api_success(_task_log_to_dict(task_log))
return api_error(http_status.HTTP_404_NOT_FOUND, f"任务 {task_id} 不存在")
@api_view(["POST"])
def task_cancel(request, task_id: str):
"""

View File

@@ -26,6 +26,7 @@ urlpatterns = [
# ─── 任务 ───
path("api/tasks", tasks.task_list),
path("api/tasks/detail/<str:task_id>", tasks.task_detail),
path("api/tasks/<str:task_id>/cancel", tasks.task_cancel),
path("api/tasks/<int:account_id>", tasks.task_list_by_account),