拆镜 AI拆片 API 可重复执行
This commit is contained in:
@@ -544,20 +544,20 @@ async def create_segments_by_ai(
|
||||
if not suggestions:
|
||||
raise HTTPException(status_code=400, detail="selected_indices 没有匹配到可用 AI 建议")
|
||||
|
||||
old_result = await db.execute(
|
||||
select(ShotReplicateSegment).where(
|
||||
ShotReplicateSegment.task_set_id == task_set.id,
|
||||
ShotReplicateSegment.source_mode == ShotSegmentSourceModeEnum.AI_SUGGESTION.value,
|
||||
ShotReplicateSegment.deleted_at.is_(None),
|
||||
)
|
||||
)
|
||||
old_segments = list(old_result.scalars().all())
|
||||
if old_segments and not req.replace_existing:
|
||||
raise HTTPException(status_code=409, detail="已存在 AI 建议拆镜片段,如需重拆请传 replace_existing=true")
|
||||
if old_segments and req.replace_existing:
|
||||
now = _now()
|
||||
for segment in old_segments:
|
||||
segment.deleted_at = now
|
||||
# old_result = await db.execute(
|
||||
# select(ShotReplicateSegment).where(
|
||||
# ShotReplicateSegment.task_set_id == task_set.id,
|
||||
# ShotReplicateSegment.source_mode == ShotSegmentSourceModeEnum.AI_SUGGESTION.value,
|
||||
# ShotReplicateSegment.deleted_at.is_(None),
|
||||
# )
|
||||
# )
|
||||
# old_segments = list(old_result.scalars().all())
|
||||
# if old_segments and not req.replace_existing:
|
||||
# raise HTTPException(status_code=409, detail="已存在 AI 建议拆镜片段,如需重拆请传 replace_existing=true")
|
||||
# if old_segments and req.replace_existing:
|
||||
# now = _now()
|
||||
# for segment in old_segments:
|
||||
# segment.deleted_at = now
|
||||
|
||||
created: list[ShotReplicateSegment] = []
|
||||
next_index = await _next_segment_index(db, task_set.id)
|
||||
@@ -609,7 +609,7 @@ async def create_segments_by_ai(
|
||||
detail={
|
||||
"task_set_id": task_set.id,
|
||||
"selected_indices": req.selected_indices,
|
||||
"replace_existing": req.replace_existing,
|
||||
# "replace_existing": req.replace_existing,
|
||||
"created_segment_count": len(created),
|
||||
"segment_ids": [segment.id for segment in created],
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user