#!/bin/bash

# ZJPB 一键部署脚本
# 用于1Panel环境快速部署

echo "================================"
echo "ZJPB - 焦提示词 部署脚本"
echo "================================"
echo ""

# 检查Python版本
python_version=$(python3 --version 2>&1 | awk '{print $2}')
echo "✓ Python版本: $python_version"

# 创建必要目录
echo "创建必要目录..."
mkdir -p logs
mkdir -p static/uploads
echo "✓ 目录创建完成"

# 创建虚拟环境
if [ ! -d "venv" ]; then
    echo "创建Python虚拟环境..."
    python3 -m venv venv
    echo "✓ 虚拟环境创建完成"
else
    echo "✓ 虚拟环境已存在"
fi

# 激活虚拟环境
source venv/bin/activate

# 升级pip
echo "升级pip..."
pip install --upgrade pip -q

# 安装依赖
echo "安装Python依赖包..."
pip install -r requirements.txt -q
echo "✓ 依赖包安装完成"

# 检查.env文件
if [ ! -f ".env" ]; then
    echo ""
    echo "⚠️  警告: .env文件不存在"
    echo "请从.env.example复制并配置："
    echo "  cp .env.example .env"
    echo "  nano .env"
    echo ""
    read -p "是否现在创建.env文件? (y/n) " -n 1 -r
    echo
    if [[ $REPLY =~ ^[Yy]$ ]]; then
        cp .env.example .env
        echo "✓ .env文件已创建，请编辑配置"
        nano .env
    fi
else
    echo "✓ .env配置文件存在"
fi

# 询问是否初始化数据库
echo ""
read -p "是否需要初始化数据库? (首次部署选择y) (y/n) " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]; then
    echo "初始化数据库..."
    python init_db.py
    echo "✓ 数据库初始化完成"
    echo ""
    echo "默认管理员账号："
    echo "  用户名: admin"
    echo "  密码: admin123"
    echo "  ⚠️  请登录后立即修改密码！"
fi

# 设置权限
echo ""
echo "设置目录权限..."
chmod 755 logs static/uploads
chmod +x manage.sh
echo "✓ 权限设置完成"

echo ""
echo "================================"
echo "部署完成！"
echo "================================"
echo ""
echo "后续步骤："
echo "1. 确保已在1Panel中创建MySQL数据库"
echo "2. 确保.env文件配置正确"
echo "3. 在1Panel中创建反向代理网站，指向: http://127.0.0.1:5000"
echo "4. 启动应用: ./manage.sh start"
echo "5. 访问网站并修改默认密码"
echo ""
echo "详细文档: 查看 DEPLOYMENT.md"
echo ""
