ShopTRAINING/Windows_快速启动.bat
2025-07-02 11:05:23 +08:00

180 lines
4.0 KiB
Batchfile
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

@echo off
chcp 65001 >nul
echo ====================================
echo 药店销售预测系统 - Windows 快速启动
echo ====================================
echo.
:: 检查Python
echo [1/6] 检查Python环境...
python --version >nul 2>&1
if errorlevel 1 (
echo ❌ 未找到Python请先安装Python 3.8+
pause
exit /b 1
)
echo ✓ Python环境正常
:: 检查虚拟环境
echo.
echo [2/6] 检查虚拟环境...
if not exist ".venv\Scripts\python.exe" (
echo 🔄 创建虚拟环境...
python -m venv .venv
if errorlevel 1 (
echo ❌ 虚拟环境创建失败
pause
exit /b 1
)
)
echo ✓ 虚拟环境准备完成
:: 激活虚拟环境
echo.
echo [3/6] 激活虚拟环境...
call .venv\Scripts\activate.bat
if errorlevel 1 (
echo ❌ 虚拟环境激活失败
pause
exit /b 1
)
echo ✓ 虚拟环境已激活
:: 安装依赖
echo.
echo [4/6] 检查Python依赖...
pip show flask >nul 2>&1
if errorlevel 1 (
echo 🔄 安装Python依赖...
pip install -r install\requirements.txt
if errorlevel 1 (
echo ❌ 依赖安装失败
pause
exit /b 1
)
)
echo ✓ Python依赖已安装
:: 检查数据文件
echo.
echo [5/6] 检查数据文件...
if not exist "pharmacy_sales_multi_store.csv" (
echo 🔄 生成示例数据...
python generate_multi_store_data.py
if errorlevel 1 (
echo ❌ 数据生成失败
pause
exit /b 1
)
)
echo ✓ 数据文件准备完成
:: 初始化数据库
echo.
echo [6/6] 初始化数据库...
if not exist "prediction_history.db" (
echo 🔄 初始化数据库...
python server\init_multi_store_db.py
if errorlevel 1 (
echo ❌ 数据库初始化失败
pause
exit /b 1
)
)
echo ✓ 数据库准备完成
echo.
echo ====================================
echo ✅ 环境准备完成!
echo ====================================
echo.
echo 接下来请选择启动方式:
echo [1] 启动API服务器 (后端)
echo [2] 启动前端开发服务器
echo [3] 运行API测试
echo [4] 查看项目状态
echo [0] 退出
echo.
:menu
set /p choice="请选择 (0-4): "
if "%choice%"=="1" goto start_api
if "%choice%"=="2" goto start_frontend
if "%choice%"=="3" goto run_tests
if "%choice%"=="4" goto show_status
if "%choice%"=="0" goto end
echo 无效选择,请重新输入
goto menu
:start_api
echo.
echo 🚀 启动API服务器...
echo 服务器将在 http://localhost:5000 启动
echo API文档访问: http://localhost:5000/swagger
echo.
echo 按 Ctrl+C 停止服务器
echo.
cd server
python api.py
goto end
:start_frontend
echo.
echo 🚀 启动前端开发服务器...
cd UI
if not exist "node_modules" (
echo 🔄 安装前端依赖...
npm install
if errorlevel 1 (
echo ❌ 前端依赖安装失败
pause
goto menu
)
)
echo 前端将在 http://localhost:5173 启动
echo.
npm run dev
goto end
:run_tests
echo.
echo 🧪 运行API测试...
python test_api_endpoints.py
echo.
pause
goto menu
:show_status
echo.
echo 📊 项目状态检查...
echo.
echo === 文件检查 ===
if exist "pharmacy_sales_multi_store.csv" (echo ✓ 多店铺数据文件) else (echo ❌ 多店铺数据文件缺失)
if exist "prediction_history.db" (echo ✓ 预测历史数据库) else (echo ❌ 预测历史数据库缺失)
if exist "server\api.py" (echo ✓ API服务器文件) else (echo ❌ API服务器文件缺失)
if exist "UI\package.json" (echo ✓ 前端项目文件) else (echo ❌ 前端项目文件缺失)
echo.
echo === 模型文件 ===
if exist "saved_models" (
echo 已保存的模型:
dir saved_models\*.pth /b 2>nul || echo 暂无已训练的模型
) else (
echo ❌ 模型目录不存在
)
echo.
echo === 虚拟环境状态 ===
python -c "import sys; print('Python版本:', sys.version)"
python -c "import flask; print('Flask版本:', flask.__version__)" 2>nul || echo ❌ Flask未安装
echo.
pause
goto menu
:end
echo.
echo 感谢使用药店销售预测系统!
echo.
pause