"""Additional point data

Revision ID: 50e8b4193a62
Revises: f67c2bcbfcfa
Create Date: 2025-08-11 12:23:33.198154

"""
from alembic import op
import sqlalchemy as sa
from sqlalchemy.dialects import postgresql
from geoalchemy2 import Geometry

# revision identifiers, used by Alembic.
revision = '50e8b4193a62'
down_revision = 'f67c2bcbfcfa'
branch_labels = None
depends_on = None


def upgrade():
    op.add_column('custom_polygons', sa.Column('metrics', sa.JSON(), nullable=True))

    for table in ['points_asc', 'points_desc']:
        op.drop_column(table, 'srisk')

        op.add_column(table, sa.Column('cycle_slips', sa.Numeric(5,2), nullable=True))
        op.add_column(table, sa.Column('av_coherence', sa.Numeric(5,2), nullable=True))
        op.add_column(table, sa.Column('height', sa.Numeric(5,2), nullable=True))
        op.add_column(table, sa.Column('delta_quality_3', sa.Numeric(5,2), nullable=True))
        op.add_column(table, sa.Column('delta_quality_6', sa.Numeric(5,2), nullable=True))
        op.add_column(table, sa.Column('delta_velocity_3', sa.Numeric(5,2), nullable=True))
        op.add_column(table, sa.Column('delta_velocity_6', sa.Numeric(5,2), nullable=True))
        op.add_column(table, sa.Column('ps', sa.Boolean(), nullable=True))

def downgrade():
    op.drop_column('custom_polygons', 'metrics')

    for table in ['points_asc', 'points_desc']:
        op.add_column(table, sa.Column('srisk', sa.Float(24), nullable=True))

        op.drop_column(table, 'cycle_slips')
        op.drop_column(table, 'av_coherence')
        op.drop_column(table, 'height')
        op.drop_column(table, 'delta_quality_3')
        op.drop_column(table, 'delta_quality_6')
        op.drop_column(table, 'delta_velocity_3')
        op.drop_column(table, 'delta_velocity_6')
        op.drop_column(table, 'ps')
