#include "software.h" #include "nginx/nginx.h" #include "fastweb/fastweb.h" #include "mysql/mysql.h" #include "redis/redis.h" #include "../utils.h" #include namespace ngs { namespace software { void menu() { while (true) { print_header("软件管理"); std::cout << "默认安装目录: " << software_root() << "\n\n"; std::cout << " 1) Nginx"; if (nginx::is_installed()) { std::cout << " [已安装 " << nginx::installed_version() << "]"; } else { std::cout << " [未安装]"; } std::cout << "\n"; std::cout << " 2) Fastweb"; if (fastweb::is_installed()) { std::cout << " [已安装 " << fastweb::installed_version() << "]"; } else { std::cout << " [未安装]"; } std::cout << "\n"; std::cout << " 3) MySQL"; if (mysql::is_installed()) { std::cout << " [已安装 " << mysql::installed_version() << "]"; } else { std::cout << " [未安装]"; } std::cout << "\n"; std::cout << " 4) Redis"; if (redis::is_installed()) { std::cout << " [已安装 " << redis::installed_version() << "]"; } else { std::cout << " [未安装]"; } std::cout << "\n"; std::cout << " 0) 返回主菜单\n\n"; int choice = read_choice("请选择: "); switch (choice) { case 1: nginx::menu(); break; case 2: fastweb::menu(); break; case 3: mysql::menu(); break; case 4: redis::menu(); break; case 0: return; default: std::cout << "无效选项。\n"; pause(); break; } } } } // namespace software } // namespace ngs