feat: 用户软删除+30天自动清理,操作日志共享配方统一显示
Some checks failed
PR Preview / teardown-preview (pull_request) Has been skipped
Test / unit-test (push) Successful in 5s
Test / build-check (push) Successful in 4s
PR Preview / test (pull_request) Successful in 5s
PR Preview / deploy-preview (pull_request) Successful in 17s
Test / e2e-test (push) Has been cancelled

用户删除改为软删除(deleted标记),撤销时数据完整恢复(配方/收藏/库存等)。
30天后自动硬删除清理。操作日志中共享配方和采纳配方统一显示为"共享配方"。

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-11 22:03:36 +00:00
parent ad636f2df6
commit 5848a21540
3 changed files with 66 additions and 30 deletions

View File

@@ -245,6 +245,12 @@ def init_db():
if "en_name" not in cols:
c.execute("ALTER TABLE recipes ADD COLUMN en_name TEXT DEFAULT ''")
# Migration: soft-delete for users
if "deleted" not in user_cols:
c.execute("ALTER TABLE users ADD COLUMN deleted INTEGER DEFAULT 0")
if "deleted_at" not in user_cols:
c.execute("ALTER TABLE users ADD COLUMN deleted_at TEXT")
# Seed admin user if no users exist
count = c.execute("SELECT COUNT(*) FROM users").fetchone()[0]
if count == 0: