From 67755c7847767c9db7c1ddf6f3c3255fdac90b12 Mon Sep 17 00:00:00 2001 From: duxingchen Date: Thu, 6 Aug 2026 11:41:45 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=92=A4=E5=9B=9E500:=20?= =?UTF-8?q?=E5=85=88=E5=88=A0task=5Flogs+task=5Frecords=E5=86=8D=E5=88=A0t?= =?UTF-8?q?ask,=E5=8A=A0delete=20import?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/app/services/task_service.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/backend/app/services/task_service.py b/backend/app/services/task_service.py index 5e29e39..bb3add2 100644 --- a/backend/app/services/task_service.py +++ b/backend/app/services/task_service.py @@ -2,7 +2,7 @@ from __future__ import annotations import uuid from fastapi import HTTPException, status -from sqlalchemy import select +from sqlalchemy import select, delete from sqlalchemy.ext.asyncio import AsyncSession from sqlalchemy.orm import selectinload @@ -337,6 +337,11 @@ async def recall_task( product.current_location_id = parent.assignee_id product.overall_status = parent.task_name + # 先删除关联的 task_logs 和 task_records + await db.execute(delete(TaskLog).where(TaskLog.task_id == task_id)) + await db.execute(delete(TaskRecord).where(TaskRecord.task_id == task_id)) + await db.flush() + # 删除 PENDING 子任务 await db.delete(task)