群级别用户维护
This commit is contained in:
@@ -37,7 +37,7 @@ class XiuxianDB:
|
||||
"""从连接池获取连接。业务层无需手动关闭,with 语法自动释放。"""
|
||||
return self.pool.get_connection()
|
||||
|
||||
def get_player(self, user_id: str) -> Optional[Dict[str, Any]]:
|
||||
def get_player(self, user_id: str, group_id: str) -> Optional[Dict[str, Any]]:
|
||||
"""读取玩家核心信息。
|
||||
|
||||
Args:
|
||||
@@ -50,8 +50,8 @@ class XiuxianDB:
|
||||
with self._conn() as conn:
|
||||
with conn.cursor(dictionary=True) as cur:
|
||||
cur.execute(
|
||||
"SELECT user_id, group_id, dao_name, realm, spirit_root, cultivation_points, spirit_stone, status, status_until, last_cultivate_time, clan_id FROM t_xiuxian_player WHERE user_id=%s",
|
||||
(user_id,)
|
||||
"SELECT user_id, group_id, dao_name, realm, spirit_root, cultivation_points, spirit_stone, status, status_until, last_cultivate_time, clan_id FROM t_xiuxian_player WHERE user_id=%s AND group_id=%s",
|
||||
(user_id, group_id)
|
||||
)
|
||||
return cur.fetchone()
|
||||
except mysql.connector.Error:
|
||||
@@ -86,7 +86,7 @@ class XiuxianDB:
|
||||
except mysql.connector.Error:
|
||||
return False
|
||||
|
||||
def update_player_fields(self, user_id: str, fields: Dict[str, Any]) -> bool:
|
||||
def update_player_fields(self, user_id: str, group_id: str, fields: Dict[str, Any]) -> bool:
|
||||
"""增量更新玩家字段。
|
||||
|
||||
Args:
|
||||
@@ -108,7 +108,8 @@ class XiuxianDB:
|
||||
cols.append(f"{k}=%s")
|
||||
vals.append(v)
|
||||
vals.append(user_id)
|
||||
sql = f"UPDATE t_xiuxian_player SET {', '.join(cols)} WHERE user_id=%s"
|
||||
vals.append(group_id)
|
||||
sql = f"UPDATE t_xiuxian_player SET {', '.join(cols)} WHERE user_id=%s AND group_id=%s"
|
||||
try:
|
||||
with self._conn() as conn:
|
||||
with conn.cursor() as cur:
|
||||
|
||||
Reference in New Issue
Block a user