#!/bin/bash
# ZJPB v2.1 一键部署命令集合
# 复制整个脚本到服务器终端执行即可

set -e  # 遇到错误立即停止

echo "================================"
echo "ZJPB v2.1 一键部署"
echo "================================"
echo ""

# 进入项目目录
cd /opt/1panel/apps/zjpb

# 显示当前位置
echo "📂 当前目录: $(pwd)"
echo ""

# 停止应用
echo "⏸️  停止应用..."
./manage.sh stop 2>/dev/null || echo "应用未运行"
sleep 2

# 检查Git状态
echo ""
echo "🔍 检查Git状态..."
git status --short

# 备份未提交的修改
echo ""
echo "💾 备份当前修改..."
if ! git diff-index --quiet HEAD -- 2>/dev/null; then
    git stash save "backup_before_v2.1_$(date +%Y%m%d_%H%M%S)"
    echo "   ✅ 已保存未提交的修改"
else
    echo "   ℹ️  无需备份"
fi

# 检查patch文件
echo ""
echo "📦 检查补丁文件..."
if [ ! -f "v2.1.0.patch" ]; then
    echo "   ❌ v2.1.0.patch 不存在，请先上传"
    exit 1
fi
echo "   ✅ v2.1.0.patch 存在"

# 应用patch
echo ""
echo "🔧 应用v2.1.0补丁..."
git apply --check v2.1.0.patch 2>&1
if [ $? -eq 0 ]; then
    git apply v2.1.0.patch
    echo "   ✅ 补丁应用成功"
else
    echo "   ❌ 补丁应用失败"
    exit 1
fi

# 提交更改
echo ""
echo "📝 提交更改到Git..."
git add .
git commit -m "release: v2.1.0 - Prompt管理系统、页脚优化、图标修复

部署时间: $(date '+%Y-%m-%d %H:%M:%S')
部署方式: Git Patch

更新内容：
- 新增Prompt管理系统
- 页脚添加ICP备案号和统计代码
- 详情页图标优化（Material Icons → Emoji）
- 修复标签显示问题
" 2>&1

# 激活虚拟环境
echo ""
echo "🐍 激活虚拟环境..."
source venv/bin/activate

# 安装依赖
echo ""
echo "📚 检查依赖..."
pip install -r requirements.txt -q

# 运行数据库迁移
echo ""
echo "🗄️  运行数据库迁移..."
python migrate_prompts.py

# 重启应用
echo ""
echo "🚀 重启应用..."
./manage.sh start
sleep 3

# 检查状态
echo ""
echo "✅ 检查应用状态..."
./manage.sh status

# 显示Git历史
echo ""
echo "📜 Git提交历史（最近3条）:"
git log --oneline -3

echo ""
echo "================================"
echo "🎉 部署完成！"
echo "================================"
echo ""
echo "📋 验证清单："
echo "  1. 访问首页，检查页脚ICP备案号"
echo "  2. 访问详情页，检查图标是否为emoji"
echo "  3. 登录后台，检查Prompt管理菜单"
echo "  4. 编辑网站，检查标签显示是否正常"
echo "  5. 测试AI生成功能"
echo ""
echo "🔧 查看日志: ./manage.sh logs"
echo "📊 查看状态: ./manage.sh status"
echo ""
