@echo off chcp 65001 >nul 2>&1 setlocal enabledelayedexpansion :: ======================================== :: Education System - Windows Startup Script :: 教务系统 - Windows启动脚本 :: ======================================== :MAIN_MENU cls echo ======================================== echo Education System - Smart Launcher echo 教务系统 - 智能启动器 echo ======================================== echo. echo Select an option / 请选择一个选项: echo. echo 0 - Start All Industries / 启动所有产业 echo -------------- echo 1 - Cultural Tourism / 文旅产业 (Port/端口: 5150) echo 2 - Smart Manufacturing / 智能制造 (Port/端口: 5151) echo 3 - Smart Development / 智能开发 (Port/端口: 5152) echo 4 - Finance and Commerce / 财经商贸 (Port/端口: 5153) echo 5 - Visual Design / 视觉设计 (Port/端口: 5154) echo 6 - Transportation / 交通物流 (Port/端口: 5155) echo 7 - Healthcare / 大健康 (Port/端口: 5156) echo 8 - Civil Engineering / 土木水利 (Port/端口: 5157) echo 9 - Food Industry / 食品产业 (Port/端口: 5158) echo 10 - Chemical Industry / 化工产业 (Port/端口: 5159) echo 11 - Energy Industry / 能源产业 (Port/端口: 5160) echo 12 - Environmental / 环保产业 (Port/端口: 5161) echo -------------- echo A - Stop All / 停止所有 echo S - Check Status / 查看状态 echo Q - Exit / 退出 echo. set /p choice=Enter your choice / 请输入选项: if "%choice%"=="0" goto START_ALL if "%choice%"=="1" goto START_1 if "%choice%"=="2" goto START_2 if "%choice%"=="3" goto START_3 if "%choice%"=="4" goto START_4 if "%choice%"=="5" goto START_5 if "%choice%"=="6" goto START_6 if "%choice%"=="7" goto START_7 if "%choice%"=="8" goto START_8 if "%choice%"=="9" goto START_9 if "%choice%"=="10" goto START_10 if "%choice%"=="11" goto START_11 if "%choice%"=="12" goto START_12 if /i "%choice%"=="A" goto STOP_ALL if /i "%choice%"=="S" goto CHECK_STATUS if /i "%choice%"=="Q" goto EXIT echo Invalid option! / 无效选项! timeout /t 2 >nul goto MAIN_MENU :START_ALL echo. echo Starting all industries... / 正在启动所有产业... call :START_INDUSTRY "frontend" "Cultural Tourism / 文旅产业" 5150 call :START_INDUSTRY "frontend_智能制造" "Smart Manufacturing / 智能制造" 5151 call :START_INDUSTRY "frontend_智能开发" "Smart Development / 智能开发" 5152 call :START_INDUSTRY "frontend_财经商贸" "Finance Commerce / 财经商贸" 5153 call :START_INDUSTRY "frontend_视觉设计" "Visual Design / 视觉设计" 5154 call :START_INDUSTRY "frontend_交通物流" "Transportation / 交通物流" 5155 call :START_INDUSTRY "frontend_大健康" "Healthcare / 大健康" 5156 call :START_INDUSTRY "frontend_土木水利" "Civil Engineering / 土木水利" 5157 call :START_INDUSTRY "frontend_食品" "Food Industry / 食品产业" 5158 call :START_INDUSTRY "frontend_化工" "Chemical Industry / 化工产业" 5159 call :START_INDUSTRY "frontend_能源" "Energy Industry / 能源产业" 5160 call :START_INDUSTRY "frontend_环保" "Environmental / 环保产业" 5161 echo. echo All industries started! / 所有产业已启动! pause goto MAIN_MENU :START_1 call :START_INDUSTRY "frontend" "Cultural Tourism / 文旅产业" 5150 pause goto MAIN_MENU :START_2 call :START_INDUSTRY "frontend_智能制造" "Smart Manufacturing / 智能制造" 5151 pause goto MAIN_MENU :START_3 call :START_INDUSTRY "frontend_智能开发" "Smart Development / 智能开发" 5152 pause goto MAIN_MENU :START_4 call :START_INDUSTRY "frontend_财经商贸" "Finance Commerce / 财经商贸" 5153 pause goto MAIN_MENU :START_5 call :START_INDUSTRY "frontend_视觉设计" "Visual Design / 视觉设计" 5154 pause goto MAIN_MENU :START_6 call :START_INDUSTRY "frontend_交通物流" "Transportation / 交通物流" 5155 pause goto MAIN_MENU :START_7 call :START_INDUSTRY "frontend_大健康" "Healthcare / 大健康" 5156 pause goto MAIN_MENU :START_8 call :START_INDUSTRY "frontend_土木水利" "Civil Engineering / 土木水利" 5157 pause goto MAIN_MENU :START_9 call :START_INDUSTRY "frontend_食品" "Food Industry / 食品产业" 5158 pause goto MAIN_MENU :START_10 call :START_INDUSTRY "frontend_化工" "Chemical Industry / 化工产业" 5159 pause goto MAIN_MENU :START_11 call :START_INDUSTRY "frontend_能源" "Energy Industry / 能源产业" 5160 pause goto MAIN_MENU :START_12 call :START_INDUSTRY "frontend_环保" "Environmental / 环保产业" 5161 pause goto MAIN_MENU :START_INDUSTRY set "dir=%~1" set "name=%~2" set "port=%~3" echo. echo ======================================== echo Starting / 正在启动: %name% echo Port / 端口: %port% echo ======================================== if not exist "%dir%" ( echo [ERROR/错误] Directory does not exist! / 目录不存在: %dir% exit /b 1 ) netstat -an | findstr ":%port%" >nul 2>&1 if %errorlevel%==0 ( echo [WARNING/警告] Port is already in use / 端口已被占用: %port% set /p stop_choice=Stop existing service? / 停止现有服务? (y/n): if /i "!stop_choice!"=="y" ( echo Stopping service... / 正在停止服务... for /f "tokens=5" %%a in ('netstat -aon ^| findstr ":%port%"') do ( taskkill /F /PID %%a >nul 2>&1 ) timeout /t 2 >nul ) else ( echo Skipping... / 跳过... exit /b 1 ) ) cd "%dir%" 2>nul if not exist "node_modules" ( echo [INFO/信息] Installing dependencies... / 正在安装依赖... echo Please wait 1-3 minutes... / 请等待1-3分钟... call npm install if !errorlevel! neq 0 ( echo [ERROR/错误] Installation failed! / 安装失败! cd .. exit /b 1 ) echo [SUCCESS/成功] Dependencies installed! / 依赖安装完成! ) else ( echo [INFO/信息] Dependencies exist / 依赖已存在 ) echo [INFO/信息] Starting service... / 正在启动服务... start /min cmd /c "npm run dev" cd .. echo Waiting for startup... / 等待启动... timeout /t 3 >nul netstat -an | findstr ":%port%" >nul 2>&1 if %errorlevel%==0 ( echo [SUCCESS/成功] Started successfully! / 启动成功! echo. echo Access URL / 访问地址: http://localhost:%port% echo. ) else ( echo [ERROR/错误] Failed to start! / 启动失败! exit /b 1 ) exit /b 0 :STOP_ALL echo. echo Stopping all services... / 正在停止所有服务... taskkill /F /IM node.exe >nul 2>&1 if %errorlevel%==0 ( echo All services stopped! / 所有服务已停止! ) else ( echo No services running / 没有运行的服务 ) pause goto MAIN_MENU :CHECK_STATUS cls echo ======================================== echo Industry Status / 产业运行状态 echo ======================================== echo. call :CHECK_PORT 5150 "Cultural Tourism / 文旅产业" call :CHECK_PORT 5151 "Smart Manufacturing / 智能制造" call :CHECK_PORT 5152 "Smart Development / 智能开发" call :CHECK_PORT 5153 "Finance Commerce / 财经商贸" call :CHECK_PORT 5154 "Visual Design / 视觉设计" call :CHECK_PORT 5155 "Transportation / 交通物流" call :CHECK_PORT 5156 "Healthcare / 大健康" call :CHECK_PORT 5157 "Civil Engineering / 土木水利" call :CHECK_PORT 5158 "Food Industry / 食品产业" call :CHECK_PORT 5159 "Chemical Industry / 化工产业" call :CHECK_PORT 5160 "Energy Industry / 能源产业" call :CHECK_PORT 5161 "Environmental / 环保产业" echo. echo Press any key to continue... / 按任意键继续... pause >nul goto MAIN_MENU :CHECK_PORT netstat -an | findstr ":%1" >nul 2>&1 if %errorlevel%==0 ( echo [RUNNING/运行中] %~2 - Port/端口: %1 echo URL: http://localhost:%1 ) else ( echo [STOPPED/未启动] %~2 - Port/端口: %1 ) exit /b 0 :EXIT echo Goodbye! / 再见! timeout /t 1 >nul exit