完成极速成品和脚本优化

This commit is contained in:
Azmat@qq.com
2026-08-25 11:13:07 +08:00
parent 00fc454db7
commit e2ec2d14af
46 changed files with 4734 additions and 432 deletions
+38 -1
View File
@@ -70,6 +70,44 @@ class ProjectStage(TimeStampedModel):
ordering = ["created_at"]
class QuickCreateJob(TeamOwnedModel):
"""“极速成片”自动编排任务。
AI 子任务仍落在 AITask;本表只保存跨商品、脚本、资产、故事板、视频和导出的编排状态,
让页面刷新、浏览器关闭后都能继续查询同一条流水线。
"""
class Status(models.TextChoices):
QUEUED = "queued", "Queued"
RUNNING = "running", "Running"
SUCCEEDED = "succeeded", "Succeeded"
FAILED = "failed", "Failed"
CANCELLED = "cancelled", "Cancelled"
class Phase(models.TextChoices):
PRODUCT = "product", "Product"
SCRIPT = "script", "Script"
ASSETS = "assets", "Assets"
PRODUCTION = "production", "Storyboard and Video"
COMPLETE = "complete", "Complete"
project = models.OneToOneField(Project, on_delete=models.CASCADE, related_name="quick_create_job")
status = models.CharField(max_length=24, choices=Status.choices, default=Status.QUEUED)
phase = models.CharField(max_length=24, choices=Phase.choices, default=Phase.PRODUCT)
progress = models.PositiveSmallIntegerField(default=0)
message = models.CharField(max_length=255, blank=True)
error_message = models.TextField(blank=True)
metadata = models.JSONField(default=dict, blank=True)
completed_at = models.DateTimeField(null=True, blank=True)
class Meta:
ordering = ["-created_at"]
indexes = [
models.Index(fields=["team", "status", "-created_at"], name="projects_qu_team_id_a8a924_idx"),
models.Index(fields=["team", "phase"], name="projects_qu_team_id_98380e_idx"),
]
class ScriptVersion(TimeStampedModel):
project = models.ForeignKey(Project, on_delete=models.CASCADE, related_name="script_versions")
task = models.ForeignKey("ai.AITask", on_delete=models.SET_NULL, null=True, blank=True, related_name="script_versions")
@@ -334,4 +372,3 @@ class ExportJob(TimeStampedModel):
progress = models.PositiveIntegerField(default=0)
error_message = models.TextField(blank=True)
metadata = models.JSONField(default=dict, blank=True)