feat: 每日AI分析改造——定调摘要、环比快照、完整连板梯队带涨停原因、生成次数记账
This commit is contained in:
@@ -82,9 +82,19 @@ CREATE TABLE IF NOT EXISTS ai_reports (
|
||||
tools_used TEXT,
|
||||
model TEXT NOT NULL,
|
||||
tokens_used INTEGER,
|
||||
generation_count INTEGER NOT NULL DEFAULT 1,
|
||||
created_at TEXT NOT NULL DEFAULT (datetime('now','localtime')),
|
||||
updated_at TEXT,
|
||||
UNIQUE(trade_date, report_type)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS daily_market_stats (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
trade_date TEXT NOT NULL,
|
||||
payload TEXT NOT NULL,
|
||||
created_at TEXT NOT NULL DEFAULT (datetime('now','localtime')),
|
||||
UNIQUE(trade_date)
|
||||
);
|
||||
"""
|
||||
|
||||
|
||||
@@ -107,6 +117,16 @@ def init_db():
|
||||
conn = get_connection()
|
||||
conn.executescript(SCHEMA_SQL)
|
||||
|
||||
# 轻量迁移:为已存在的旧表补列(CREATE TABLE IF NOT EXISTS 不会更新旧表结构)
|
||||
for alter_sql in (
|
||||
"ALTER TABLE ai_reports ADD COLUMN generation_count INTEGER NOT NULL DEFAULT 1",
|
||||
"ALTER TABLE ai_reports ADD COLUMN updated_at TEXT",
|
||||
):
|
||||
try:
|
||||
conn.execute(alter_sql)
|
||||
except sqlite3.OperationalError:
|
||||
pass # 列已存在
|
||||
|
||||
# 清理过期缓存
|
||||
from services.cache import clean_expired
|
||||
clean_expired()
|
||||
|
||||
Reference in New Issue
Block a user