fix: handle missing answered column in questions table

This commit is contained in:
ymq 2026-08-10 17:53:27 +08:00
parent 3b1b6c8e43
commit fff7bace28

View File

@ -643,15 +643,20 @@ class AgentExecutor:
review = await sor.sqlExe(
"SELECT COUNT(*) as c FROM pipeline_tasks WHERE tenant_id=${pid}$ AND state='review'",
{"pid": pid})
questions = await sor.sqlExe(
"SELECT COUNT(*) as c FROM pipeline_agent_questions WHERE tenant_id=${pid}$ AND answered IS NULL",
{"pid": pid})
# questions 表可能没有 answered 列,用 try/except 兜底
qc = 0
try:
questions = await sor.sqlExe(
"SELECT COUNT(*) as c FROM pipeline_agent_questions WHERE tenant_id=${pid}$ AND answered IS NULL",
{"pid": pid})
qc = getattr(questions[0], "c", 0) if questions else 0
except Exception:
pass
sc = getattr(submitted[0], "c", 0) if submitted else 0
rc = getattr(running[0], "c", 0) if running else 0
fc = getattr(failed[0], "c", 0) if failed else 0
vc = getattr(review[0], "c", 0) if review else 0
qc = getattr(questions[0], "c", 0) if questions else 0
return (
f"项目诊断:\n"