"""
快速启动脚本
一键完成所有初始化工作
"""
import subprocess
import sys

def run_script(script_name, description):
    """运行脚本"""
    print(f"\n{'='*60}")
    print(f"{description}")
    print(f"{'='*60}")
    try:
        result = subprocess.run([sys.executable, script_name], check=True, capture_output=True, text=True)
        print(result.stdout)
        return True
    except subprocess.CalledProcessError as e:
        print(f"✗ 失败: {e}")
        print(e.stdout)
        print(e.stderr)
        return False

def main():
    print("="*60)
    print("快速启动 - 初始化系统")
    print("="*60)
    
    steps = [
        ("migrate_add_tool_code.py", "1. 数据库迁移"),
        ("create_admin.py", "2. 创建管理员账号"),
        ("init_builtin_tools.py", "3. 加载内置工具"),
        ("create_weather_api_tool.py", "4. 创建天气助手"),
    ]
    
    success_count = 0
    for script, desc in steps:
        if run_script(script, desc):
            success_count += 1
        else:
            print(f"\n⚠️  {desc} 失败，但继续执行...")
    
    print("\n" + "="*60)
    print(f"初始化完成！成功执行 {success_count}/{len(steps)} 个步骤")
    print("="*60)
    
    print("\n✅ 系统已就绪！")
    print("\n下一步：")
    print("1. 启动后端服务:")
    print("   python main.py")
    print("\n2. 启动前端服务:")
    print("   cd ../admin_frontend")
    print("   npm run dev")
    print("\n3. 访问管理后台:")
    print("   http://localhost:5173")
    print("\n4. 使用管理员账号登录:")
    print("   用户名: admin")
    print("   密码: admin123")
    
    print("\n📦 已安装的内置工具:")
    print("  1. 天气查询 - 查询全国城市天气")
    print("  2. 计算器 - 基本数学运算")
    print("  3. 日期格式化 - 日期时间处理")
    print("  4. 文本处理 - 文本转换和统计")
    print("  5. 随机数生成 - 生成随机数据")
    
    print("\n🤖 已创建的数字员工:")
    print("  - 天气助手小智 - 专业的天气查询助手")

if __name__ == "__main__":
    main()
