feat: simplify account create/edit and add row copy
All checks were successful
技能自动化发布 / release (push) Successful in 8s
All checks were successful
技能自动化发布 / release (push) Successful in 8s
Data-management add/edit now use short forms with enums; copy clones a platform account into a new empty profile. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -471,6 +471,58 @@ def update_account(
|
||||
)
|
||||
|
||||
|
||||
def list_account_labels(conn) -> list[str]:
|
||||
cur = conn.cursor()
|
||||
cur.execute("SELECT account_label FROM accounts WHERE account_label IS NOT NULL")
|
||||
return [str(row[0]) for row in cur.fetchall() if row[0]]
|
||||
|
||||
|
||||
def update_account_user_fields(
|
||||
conn,
|
||||
account_id: int,
|
||||
*,
|
||||
account_label: Optional[str] = None,
|
||||
login_id: Any = _UNSET,
|
||||
login_id_type: Optional[str] = None,
|
||||
url: Any = _UNSET,
|
||||
status: Optional[str] = None,
|
||||
) -> None:
|
||||
"""Patch fields the data-management edit form is allowed to change."""
|
||||
sets: list[str] = []
|
||||
params: list[Any] = []
|
||||
if account_label is not None:
|
||||
label = str(account_label).strip()
|
||||
if not label:
|
||||
raise ValueError("account_label must not be empty")
|
||||
sets.append("account_label = ?")
|
||||
params.append(label)
|
||||
if login_id is not _UNSET:
|
||||
text = str(login_id).strip() if login_id is not None else ""
|
||||
sets.append("login_id = ?")
|
||||
params.append(text or None)
|
||||
if login_id_type is not None:
|
||||
typed = str(login_id_type).strip() or "unknown"
|
||||
sets.append("login_id_type = ?")
|
||||
params.append(typed)
|
||||
if url is not _UNSET:
|
||||
text = str(url).strip() if url is not None else ""
|
||||
sets.append("url = ?")
|
||||
params.append(text)
|
||||
if status is not None:
|
||||
sets.append("status = ?")
|
||||
params.append(status)
|
||||
if not sets:
|
||||
return
|
||||
sets.append("updated_at = ?")
|
||||
params.append(_now_unix())
|
||||
params.append(int(account_id))
|
||||
cur = conn.cursor()
|
||||
cur.execute(
|
||||
f"UPDATE accounts SET {', '.join(sets)} WHERE id = ?",
|
||||
tuple(params),
|
||||
)
|
||||
|
||||
|
||||
def account_exists_with_login_id(conn, platform_key: str, login_id: str, environment: str, role: str) -> bool:
|
||||
cur = conn.cursor()
|
||||
cur.execute(
|
||||
|
||||
Reference in New Issue
Block a user