# Generated by Django 5.0.3 on 2024-06-24 09:15

import django.contrib.gis.db.models.fields
import django.db.models.deletion
from django.conf import settings
from django.db import migrations, models


class Migration(migrations.Migration):

    dependencies = [
        ('booking', '0007_scheduledridemaster_scheduledride_and_more'),
        ('vehiclehub', '0006_vehicletype_base_fare_and_more'),
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.RemoveField(
            model_name='scheduledridevehicle',
            name='scheduled_ride',
        ),
        migrations.RemoveField(
            model_name='scheduledridevehicle',
            name='vehicle',
        ),
        migrations.RemoveField(
            model_name='scheduledridemaster',
            name='vehicles',
        ),
        migrations.AddField(
            model_name='scheduledridemaster',
            name='vehicle',
            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='vehiclehub.vehicle'),
        ),
        migrations.AlterField(
            model_name='scheduledridemaster',
            name='ending_time',
            field=models.TimeField(),
        ),
        migrations.AlterField(
            model_name='scheduledridemaster',
            name='starting_time',
            field=models.TimeField(),
        ),
        migrations.CreateModel(
            name='ScheduledRideDay',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('status', models.CharField(choices=[('pending', 'Pending'), ('processing', 'Processing'), ('accepted', 'Accepted'), ('started', 'Started'), ('rejected', 'Rejected'), ('completed', 'Completed'), ('cancelled', 'Cancelled')], default='pending', max_length=15)),
                ('date', models.DateField()),
                ('total_seats', models.PositiveIntegerField()),
                ('booked_seats', models.PositiveIntegerField(default=0)),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('scheduled_ride', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='booking.scheduledridemaster')),
            ],
        ),
        migrations.CreateModel(
            name='ScheduledRideParticipant',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('join_point', django.contrib.gis.db.models.fields.PointField(geography=True, srid=4326)),
                ('end_point', django.contrib.gis.db.models.fields.PointField(geography=True, srid=4326)),
                ('seats_required', models.PositiveIntegerField(default=0)),
                ('confirmed_at', models.DateTimeField(auto_now_add=True)),
                ('scheduled_ride_day', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='booking.scheduledrideday')),
                ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
            ],
        ),
        migrations.DeleteModel(
            name='ScheduledRide',
        ),
        migrations.DeleteModel(
            name='ScheduledRideVehicle',
        ),
    ]
