Files
hsa/Html/db/user_list.py
2024-12-28 17:11:24 +08:00

55 lines
1.6 KiB
Python

from tinydb import TinyDB, Query
class UserList:
def __init__(self, db_file='db/data/user/user_id_list.json'):
"""初始化用户管理,自动打开并加载 JSON 数据文件。"""
self.db_file = db_file
self.db = TinyDB(self.db_file)
self.user_query = Query()
def add_user(self, user_id, password):
"""添加新的用户登录信息"""
# 检查是否已经有该用户
if not self.db.search(self.user_query.user_id == user_id):
self.db.insert({'user_id': user_id, 'password': password})
else:
print(f"User with ID {user_id} already exists.")
def get_user(self, user_id):
"""获取指定 user_id 的用户信息"""
result = self.db.search(self.user_query.user_id == user_id)
return result[0] if result else None
def update_password(self, user_id, new_password):
"""更新用户的密码"""
self.db.update({'password': new_password}, self.user_query.user_id == user_id)
def delete_user(self, user_id):
"""删除用户"""
self.db.remove(self.user_query.user_id == user_id)
def get_all_users(self):
"""获取所有用户的信息"""
return self.db.all()
# 创建 UserList 实例
# user_list = UserList()
# # 添加用户
# user_list.add_user("user123", "password123")
# user_list.add_user("user456", "password456")
# # 获取用户
# user = user_list.get_user("user123")
# print(user)
# # 更新密码
# user_list.update_password("user123", "newpassword")
# # 获取所有用户
# all_users = user_list.get_all_users()
# print(all_users)
# # 删除用户
# user_list.delete_user("user123")