haha
This commit is contained in:
@@ -62,6 +62,34 @@ class TaskLog(models.Model):
|
||||
return f"{self.task_id} ({self.task_type})"
|
||||
|
||||
|
||||
class Task(models.Model):
|
||||
"""
|
||||
任务表(数据库为唯一真相)。
|
||||
- 所有任务的生命周期状态均保存在此表中;
|
||||
- 内存中不再长期保存任务状态,只作为必要的临时变量。
|
||||
"""
|
||||
|
||||
task_id = models.CharField(max_length=32, unique=True, verbose_name="任务 ID")
|
||||
task_type = models.CharField(max_length=64, verbose_name="任务类型")
|
||||
worker_id = models.CharField(max_length=64, default="", verbose_name="执行的 Worker")
|
||||
account_name = models.CharField(max_length=128, default="", blank=True, verbose_name="账号(环境名称)")
|
||||
status = models.CharField(max_length=32, default="", verbose_name="当前状态")
|
||||
params = models.JSONField(null=True, blank=True, verbose_name="任务参数")
|
||||
progress = models.TextField(null=True, blank=True, verbose_name="进度信息")
|
||||
result = models.JSONField(null=True, blank=True, verbose_name="任务结果")
|
||||
error = models.TextField(null=True, blank=True, verbose_name="错误信息")
|
||||
created_at = models.DateTimeField(auto_now_add=True, verbose_name="创建时间")
|
||||
updated_at = models.DateTimeField(auto_now=True, verbose_name="更新时间")
|
||||
|
||||
class Meta:
|
||||
db_table = "task"
|
||||
verbose_name = "任务"
|
||||
verbose_name_plural = verbose_name
|
||||
|
||||
def __str__(self):
|
||||
return f"{self.task_id} ({self.task_type})"
|
||||
|
||||
|
||||
class AuthToken(models.Model):
|
||||
"""登录 token 表:每个用户名仅保留当前有效 token。"""
|
||||
username = models.CharField(max_length=64, unique=True, verbose_name="用户名")
|
||||
|
||||
Reference in New Issue
Block a user