""" 创建测试用户脚本 """ import sys import os # 添加项目根目录到 Python 路径 sys.path.insert(0, os.path.dirname(os.path.abspath(__file__))) from app.core.database import SessionLocal from app.models.user import User, UserRole, UserStatus from app.core.security import get_password_hash def create_test_users(): """创建测试用户""" db = SessionLocal() try: # 创建管理员用户 admin_user = db.query(User).filter(User.username == "admin").first() if not admin_user: password = "admin123" hashed_password = get_password_hash(password) admin_user = User( username="admin", email="admin@example.com", hashed_password=hashed_password, role=UserRole.ADMIN, nickname="系统管理员", status=UserStatus.ACTIVE, balance=1000000, is_active=1, ) db.add(admin_user) print(f"Admin user created") # 创建主播用户 streamer_user = db.query(User).filter(User.username == "streamer").first() if not streamer_user: password = "streamer123" hashed_password = get_password_hash(password) streamer_user = User( username="streamer", email="streamer@example.com", hashed_password=hashed_password, role=UserRole.STREAMER, nickname="测试主播", status=UserStatus.ACTIVE, balance=500000, is_active=1, ) db.add(streamer_user) print(f"Streamer user created") # 创建普通用户 normal_user = db.query(User).filter(User.username == "user").first() if not normal_user: password = "user123" hashed_password = get_password_hash(password) normal_user = User( username="user", email="user@example.com", hashed_password=hashed_password, role=UserRole.USER, nickname="测试用户", status=UserStatus.ACTIVE, balance=200000, is_active=1, ) db.add(normal_user) print(f"Normal user created") db.commit() print(f"\nAll test users created successfully!") print(f"\nLogin credentials:") print(f"Admin: username=admin, password=admin123") print(f"Streamer: username=streamer, password=streamer123") print(f"User: username=user, password=user123") except Exception as e: db.rollback() print(f"Error creating users: {e}") finally: db.close() if __name__ == "__main__": create_test_users()