diff --git a/src/config/constants.py b/src/config/constants.py index ab795a4..d3553d0 100644 --- a/src/config/constants.py +++ b/src/config/constants.py @@ -66,6 +66,12 @@ OPENAI_API_ENDPOINTS = { "select_workspace": "https://auth.openai.com/api/accounts/workspace/select", } +# OpenAI 页面类型(用于判断账号状态) +OPENAI_PAGE_TYPES = { + "EMAIL_OTP_VERIFICATION": "email_otp_verification", # 已注册账号,需要 OTP 验证 + "PASSWORD_REGISTRATION": "password", # 新账号,需要设置密码 +} + # ============================================================================ # 邮箱服务相关常量 # ============================================================================ diff --git a/src/database/crud.py b/src/database/crud.py index 79fef2a..42d1870 100644 --- a/src/database/crud.py +++ b/src/database/crud.py @@ -30,7 +30,8 @@ def create_account( proxy_used: Optional[str] = None, expires_at: Optional['datetime'] = None, extra_data: Optional[Dict[str, Any]] = None, - status: Optional[str] = None + status: Optional[str] = None, + source: Optional[str] = None ) -> Account: """创建新账户""" db_account = Account( @@ -49,6 +50,7 @@ def create_account( expires_at=expires_at, extra_data=extra_data or {}, status=status or 'active', + source=source or 'register', registered_at=datetime.utcnow() ) db.add(db_account) diff --git a/src/database/session.py b/src/database/session.py index e4b18b5..97b76af 100644 --- a/src/database/session.py +++ b/src/database/session.py @@ -94,6 +94,7 @@ class DatabaseSessionManager: # (表名, 列名, 列类型) ("accounts", "cpa_uploaded", "BOOLEAN DEFAULT 0"), ("accounts", "cpa_uploaded_at", "DATETIME"), + ("accounts", "source", "VARCHAR(20) DEFAULT 'register'"), ] with self.engine.connect() as conn: