import pymysql

conn = pymysql.connect(
    host='officialsite.kr',
    port=23306,
    user='admin',
    password='dlgks~123',
    database='app_master',
    charset='utf8mb4'
)

cursor = conn.cursor(pymysql.cursors.DictCursor)

print("=" * 60)
print("Adding blind columns to balancepick_games table")
print("=" * 60)

# Add is_blinded column
try:
    cursor.execute("""
        ALTER TABLE balancepick_games
        ADD COLUMN is_blinded BOOLEAN DEFAULT FALSE AFTER reject_reason
    """)
    print("[OK] Added is_blinded column")
except Exception as e:
    if 'Duplicate column' in str(e):
        print("[SKIP] is_blinded column already exists")
    else:
        print(f"[ERROR] {e}")

# Add blinded_at column
try:
    cursor.execute("""
        ALTER TABLE balancepick_games
        ADD COLUMN blinded_at TIMESTAMP NULL AFTER is_blinded
    """)
    print("[OK] Added blinded_at column")
except Exception as e:
    if 'Duplicate column' in str(e):
        print("[SKIP] blinded_at column already exists")
    else:
        print(f"[ERROR] {e}")

# Add blind_reason column
try:
    cursor.execute("""
        ALTER TABLE balancepick_games
        ADD COLUMN blind_reason TEXT NULL AFTER blinded_at
    """)
    print("[OK] Added blind_reason column")
except Exception as e:
    if 'Duplicate column' in str(e):
        print("[SKIP] blind_reason column already exists")
    else:
        print(f"[ERROR] {e}")

# Add index for is_blinded
try:
    cursor.execute("""
        ALTER TABLE balancepick_games
        ADD INDEX idx_is_blinded (is_blinded)
    """)
    print("[OK] Added index for is_blinded")
except Exception as e:
    if 'Duplicate key' in str(e):
        print("[SKIP] is_blinded index already exists")
    else:
        print(f"[ERROR] {e}")

conn.commit()

# Verify
print("\n" + "=" * 60)
print("Current table structure")
print("=" * 60)

cursor.execute("DESCRIBE balancepick_games")
columns = cursor.fetchall()

for col in columns:
    print(f"  {col['Field']:20} | {col['Type']:40}")

cursor.close()
conn.close()

print("\n[DONE] Migration completed!")
