06/11 Update Inspection result will include GPS

This commit is contained in:
2026-06-11 13:57:41 -04:00
parent 99546f4ed7
commit 079e826a7a
6 changed files with 98 additions and 2 deletions
@@ -0,0 +1,36 @@
"""phase25 — add GPS coordinates to inspections
Adds submit_latitude and submit_longitude columns to the inspections table.
Populated at web submission time via browser Geolocation API.
Null for all existing inspections and mobile submissions (handled separately).
"""
import sqlalchemy as sa
from alembic import op
revision = 'phase25_inspection_gps'
down_revision = 'phase24_notify_defaults'
branch_labels = None
depends_on = None
def upgrade():
conn = op.get_bind()
has_lat = conn.execute(sa.text(
"SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS "
"WHERE TABLE_SCHEMA = DATABASE() "
" AND TABLE_NAME = 'inspections' "
" AND COLUMN_NAME = 'submit_latitude'"
)).scalar()
if not has_lat:
op.add_column('inspections',
sa.Column('submit_latitude', sa.Numeric(10, 7), nullable=True))
op.add_column('inspections',
sa.Column('submit_longitude', sa.Numeric(10, 7), nullable=True))
def downgrade():
op.drop_column('inspections', 'submit_longitude')
op.drop_column('inspections', 'submit_latitude')