"""add_driver_account_settings_and_offer_profiles

Revision ID: 6ea2f0845b38
Revises: 
Create Date: 2026-03-18 14:31:29.739460

"""
from typing import Sequence, Union

from alembic import op
import sqlalchemy as sa
from sqlalchemy.dialects import mysql

# revision identifiers, used by Alembic.
revision: str = '6ea2f0845b38'
down_revision: Union[str, None] = None
branch_labels: Union[str, Sequence[str], None] = None
depends_on: Union[str, Sequence[str], None] = None


def upgrade() -> None:
    # ### commands auto generated by Alembic - please adjust! ###
    op.alter_column('driver_account_settings', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('driver_account_settings', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('driver_documents', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('driver_documents', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('drivers', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('drivers', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('fare_bids', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('fare_bids', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('map_provider_configs', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('map_provider_configs', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('notifications', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('notifications', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('offer_profiles', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('offer_profiles', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('payments', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('payments', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('promo_codes', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('promo_codes', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('promo_usages', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('promo_usages', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('ratings', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('ratings', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('rides', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('rides', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('system_configs', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('system_configs', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('transactions', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('transactions', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('users', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('users', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('vehicle_categories', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('vehicle_categories', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('vehicles', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('vehicles', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('wallets', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('wallets', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('withdrawal_requests', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    op.alter_column('withdrawal_requests', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('now()'),
               existing_nullable=False)
    # ### end Alembic commands ###


def downgrade() -> None:
    # ### commands auto generated by Alembic - please adjust! ###
    op.alter_column('withdrawal_requests', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('withdrawal_requests', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('wallets', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('wallets', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('vehicles', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('vehicles', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('vehicle_categories', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('vehicle_categories', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('users', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('users', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('transactions', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('transactions', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('system_configs', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('system_configs', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('rides', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('rides', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('ratings', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('ratings', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('promo_usages', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('promo_usages', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('promo_codes', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('promo_codes', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('payments', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('payments', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('offer_profiles', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('offer_profiles', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('notifications', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('notifications', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('map_provider_configs', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('map_provider_configs', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('fare_bids', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('fare_bids', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('drivers', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('drivers', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('driver_documents', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('driver_documents', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('driver_account_settings', 'updated_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    op.alter_column('driver_account_settings', 'created_at',
               existing_type=mysql.DATETIME(),
               server_default=sa.text('(now())'),
               existing_nullable=False)
    # ### end Alembic commands ###
