#!/bin/bash
# Old RogDB → RogDB 移行クイックスタート

echo "============================================================"
echo "Old RogDB → RogDB データ移行クイックスタート"
echo "============================================================"

# 実行前チェック
echo "🔍 実行前チェック..."

# Docker Composeサービス確認
if ! docker compose ps | grep -q "Up"; then
    echo "❌ Docker Composeサービスが起動していません"
    echo "次のコマンドでサービスを起動してください:"
    echo "docker compose up -d"
    exit 1
fi

echo "✅ Docker Composeサービス確認完了"

# データベース接続確認
echo "🔍 データベース接続確認..."
if ! docker compose exec app python -c "
import psycopg2
try:
    conn = psycopg2.connect(host='postgres-db', database='rogdb', user='admin', password='admin123456')
    print('✅ rogdb接続成功')
    conn.close()
except Exception as e:
    print(f'❌ rogdb接続エラー: {e}')
    exit(1)
"; then
    echo "❌ データベース接続に失敗しました"
    exit 1
fi

# メニュー表示
echo ""
echo "📋 移行オプションを選択してください:"
echo "1) 完全移行（全rog_*テーブル）"
echo "2) 安全移行（ユーザー関連テーブル除外）"
echo "3) 統計情報のみ表示"
echo "4) テーブル一覧のみ表示"
echo "5) カスタム移行（除外テーブル指定）"
echo "0) キャンセル"
echo ""

read -p "選択 (0-5): " choice

case $choice in
    1)
        echo "🚀 完全移行を開始します..."
        docker compose exec app python migrate_old_rogdb_to_rogdb.py
        ;;
    2)
        echo "🛡️  安全移行を開始します（ユーザー関連テーブル除外）..."
        docker compose exec -e EXCLUDE_TABLES=rog_customuser,rog_session app python migrate_old_rogdb_to_rogdb.py
        ;;
    3)
        echo "📊 統計情報を表示します..."
        make migrate-old-rogdb-stats
        ;;
    4)
        echo "📋 テーブル一覧を表示します..."
        make migrate-old-rogdb-dryrun
        ;;
    5)
        echo "除外するテーブル名をカンマ区切りで入力してください（例: rog_customuser,rog_session）:"
        read -p "除外テーブル: " exclude_tables
        echo "🔧 カスタム移行を開始します..."
        docker compose exec -e EXCLUDE_TABLES="$exclude_tables" app python migrate_old_rogdb_to_rogdb.py
        ;;
    0)
        echo "移行をキャンセルしました"
        exit 0
        ;;
    *)
        echo "❌ 無効な選択です"
        exit 1
        ;;
esac

echo ""
echo "============================================================"
echo "移行処理が完了しました"
echo "============================================================"
echo ""
echo "📋 移行後の確認方法:"
echo "  - ログ確認: make app-logs"
echo "  - DB接続: make db-shell"
echo "  - 統計再表示: make migrate-old-rogdb-stats"
echo ""
echo "📖 詳細情報: MIGRATE_OLD_ROGDB_README.md"
