This commit is contained in:
2026-06-16 03:00:06 +08:00
parent 964c17c200
commit 5b4d7bf280
5 changed files with 612 additions and 50 deletions

View File

@@ -429,3 +429,22 @@ class WatchlistItem(Base):
sort_order: Mapped[int] = mapped_column(Integer, default=0)
note: Mapped[str] = mapped_column(String(200), default="") # 个股备注
added_at: Mapped[dt.datetime] = mapped_column(DateTime, server_default=func.now())
class ScheduledTask(Base):
"""定时任务配置。"""
__tablename__ = "scheduled_tasks"
id: Mapped[int] = mapped_column(Integer, primary_key=True, autoincrement=True)
task_id: Mapped[str] = mapped_column(String(40), unique=True, index=True) # 任务标识
name: Mapped[str] = mapped_column(String(80)) # 任务名称
description: Mapped[str] = mapped_column(String(200), default="") # 描述
enabled: Mapped[bool] = mapped_column(default=True) # 是否启用
schedule_type: Mapped[str] = mapped_column(String(20), default="cron") # cron/interval
cron_expression: Mapped[str] = mapped_column(String(50), default="") # cron表达式
interval_seconds: Mapped[int] = mapped_column(Integer, default=0) # 间隔秒数
category: Mapped[str] = mapped_column(String(20), default="其他") # 分类
last_run: Mapped[dt.datetime | None] = mapped_column(DateTime, nullable=True) # 上次运行
run_count: Mapped[int] = mapped_column(Integer, default=0) # 运行次数
last_status: Mapped[str] = mapped_column(String(20), default="") # 上次状态
last_message: Mapped[str] = mapped_column(String(500), default="") # 上次消息
created_at: Mapped[dt.datetime] = mapped_column(DateTime, server_default=func.now())