# Generated by Django 5.1.3 on 2025-09-19 10:19 import django.db.models.deletion from django.conf import settings from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [ ('accounts', '0001_initial'), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='ExtraServicesModel', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('name', models.CharField(max_length=255, verbose_name='name')), ], options={ 'verbose_name': 'ExtraServicesModel', 'verbose_name_plural': 'ExtraServicesModels', 'db_table': 'extra_services', }, ), migrations.CreateModel( name='HotelModel', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255, verbose_name='name')), ('address', models.TextField(verbose_name='address')), ('city', models.CharField(max_length=100, verbose_name='city')), ('country', models.CharField(max_length=100, verbose_name='city')), ('desc', models.TextField(blank=True, null=True, verbose_name='description')), ('phone', models.CharField(blank=True, max_length=50, null=True, verbose_name='phone number')), ('website', models.URLField(blank=True, null=True, verbose_name='hotel website')), ('rating', models.FloatField(blank=True, null=True, verbose_name='rating')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ], options={ 'verbose_name': 'HotelModel', 'verbose_name_plural': 'HotelModels', 'db_table': 'hotel', }, ), migrations.CreateModel( name='PaidServicesModel', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('name', models.CharField(max_length=255, verbose_name='name')), ('price', models.IntegerField(verbose_name='price')), ], options={ 'verbose_name': 'PaidServicesModel', 'verbose_name_plural': 'PaidServicesModels', 'db_table': 'paid_services', }, ), migrations.CreateModel( name='TariffModel', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('name', models.CharField(choices=[('3', 'Standart'), ('4', 'Comfort'), ('5', 'Luxury')], default=('3', 'Standart'), max_length=255)), ], options={ 'verbose_name': 'TariffModel', 'verbose_name_plural': 'TariffModels', 'db_table': 'tariff', }, ), migrations.CreateModel( name='TicketsItineraryModel', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('title', models.CharField(max_length=255, verbose_name='title')), ('duration', models.IntegerField(verbose_name='duration')), ], options={ 'verbose_name': 'TicketsItineraryModel', 'verbose_name_plural': 'TicketsItineraryModel', 'db_table': 'tickets_itinerary', }, ), migrations.CreateModel( name='HotelImagesModel', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('image', models.ImageField(upload_to='hotel_images/', verbose_name='image')), ('hotel', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='tickets.hotelmodel', verbose_name='hotel')), ], options={ 'verbose_name': 'HotelImagesModel', 'verbose_name_plural': 'HotelImagesModels', 'db_table': 'hotel_images', }, ), migrations.CreateModel( name='TicketsItineraryImagesModel', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('image', models.ImageField(upload_to='ticket-included-services-images/', verbose_name='image')), ('tickets_itinerary', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='ticket_itinerary_image', to='tickets.ticketsitinerarymodel', verbose_name='tickets_itinerary')), ], options={ 'verbose_name': 'TicketsItineraryImagesModel', 'verbose_name_plural': 'TicketsItineraryImagesModel', 'db_table': 'tickets_itinerary_images', }, ), migrations.CreateModel( name='TicketsItineraryDestinationsModel', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('name', models.CharField(max_length=255, verbose_name='name')), ('tickets_itinerary', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='ticket_itinerary_destinations', to='tickets.ticketsitinerarymodel', verbose_name='tickets_itinerary')), ], options={ 'verbose_name': 'TicketsItineraryDestinationsModel', 'verbose_name_plural': 'TicketsItineraryDestinationsModel', 'db_table': 'tickets_itinerary_destinations', }, ), migrations.CreateModel( name='TicketsModel', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=255, verbose_name='title')), ('price', models.BigIntegerField(verbose_name='price')), ('departure_date', models.DateField(verbose_name='departure date')), ('departure', models.CharField(max_length=255, verbose_name='departure')), ('destination', models.CharField(max_length=255, verbose_name='destination')), ('departure_time', models.DateTimeField(verbose_name='departure time')), ('travel_time', models.DateTimeField(verbose_name='travel time')), ('passenger_count', models.IntegerField(verbose_name='passenger count')), ('languages', models.CharField(max_length=255, verbose_name='languages')), ('rating', models.FloatField(verbose_name='rating')), ('hotel_info', models.TextField(verbose_name='hotel info')), ('duration_days', models.IntegerField(verbose_name='duration days')), ('hotel_meals', models.TextField(blank=True, null=True, verbose_name='hotel meals')), ('slug', models.SlugField(max_length=255, unique=True, verbose_name='slug')), ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='created at')), ('updated_at', models.DateTimeField(auto_now=True, verbose_name='updated at')), ('tariff', models.ManyToManyField(related_name='ticket_tariffs', to='tickets.tariffmodel', verbose_name='tariff')), ], options={ 'verbose_name': 'TicketsModel', 'verbose_name_plural': 'TicketsModels', 'db_table': 'tickets', }, ), migrations.AddField( model_name='ticketsitinerarymodel', name='ticket', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='ticket_itinerary', to='tickets.ticketsmodel', verbose_name='ticket'), ), migrations.CreateModel( name='TicketsIncludedServicesModel', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('image', models.ImageField(upload_to='ticket-included-services-images/', verbose_name='image')), ('title', models.CharField(max_length=255, verbose_name='title')), ('desc', models.TextField(verbose_name='description')), ('ticket', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='ticket_included_services', to='tickets.ticketsmodel', verbose_name='ticket')), ], options={ 'verbose_name': 'TicketsIncludedServicesModel', 'verbose_name_plural': 'TicketsIncludedServicesModel', 'db_table': 'tickets_included_services', }, ), migrations.CreateModel( name='TicketsImagesModel', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('image', models.ImageField(upload_to='ticket-images/', verbose_name='image')), ('ticket', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='ticket_images', to='tickets.ticketsmodel', verbose_name='ticket')), ], options={ 'verbose_name': 'TicketsImagesModel', 'verbose_name_plural': 'TicketsImagesModel', 'db_table': 'tickets_images', }, ), migrations.CreateModel( name='TicketsHotelMealsModel', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('image', models.ImageField(upload_to='ticket-hotel-meals/', verbose_name='image')), ('name', models.CharField(max_length=255, verbose_name='name')), ('desc', models.TextField(verbose_name='description')), ('ticket', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='ticket_hotel_meals', to='tickets.ticketsmodel', verbose_name='ticket')), ], options={ 'verbose_name': 'TicketsHotelMealsModel', 'verbose_name_plural': 'TicketsHotelMealsModel', 'db_table': 'tickets_hotel_meals', }, ), migrations.CreateModel( name='TicketsCommentsModel', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('text', models.TextField(verbose_name='text')), ('rating', models.FloatField(verbose_name='rating')), ('created', models.DateTimeField(auto_now_add=True, verbose_name='created')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='user')), ('ticket', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='ticket_comments', to='tickets.ticketsmodel', verbose_name='ticket')), ], options={ 'verbose_name': 'TicketsCommentsModel', 'verbose_name_plural': 'TicketsCommentsModel', 'db_table': 'tickets_comments', }, ), migrations.CreateModel( name='TicketsAmenitiesModel', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('name', models.CharField(max_length=255, verbose_name='name')), ('ticket', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='ticket_amenities', to='tickets.ticketsmodel', verbose_name='ticket')), ], options={ 'verbose_name': 'TicketsAmenitiesModel', 'verbose_name_plural': 'TicketsAmenitiesModel', 'db_table': 'tickets_amenities', }, ), migrations.CreateModel( name='TicketorderModel', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('departure', models.CharField(max_length=255, verbose_name='departure')), ('destination', models.CharField(max_length=255, verbose_name='destination')), ('departure_date', models.DateField(verbose_name='departure date')), ('arrival_time', models.DateField(verbose_name='arrival time')), ('tariff', models.CharField(max_length=255, verbose_name='tariff')), ('transport', models.CharField(max_length=255, verbose_name='transport')), ('order_status', models.CharField(choices=[('pending_payment', 'Pending Payment'), ('pending_confirmation', 'Pending Confirmation'), ('cancelled', 'Cancelled'), ('confirmed', 'Confirmed'), ('completed', 'Completed')], default='pending_payment', max_length=255, verbose_name='order status')), ('total_price', models.BigIntegerField(verbose_name='total price')), ('extra_paid_service', models.ManyToManyField(to='tickets.paidservicesmodel', verbose_name='extra paid services')), ('extra_service', models.ManyToManyField(to='tickets.extraservicesmodel', verbose_name='extra services')), ('participant', models.ManyToManyField(blank=True, null=True, to='accounts.participantmodel', verbose_name='participant')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='user')), ('ticket', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='tickets.ticketsmodel', verbose_name='ticket')), ], options={ 'verbose_name': 'TicketorderModel', 'verbose_name_plural': 'TicketorderModels', 'db_table': 'ticketorder', }, ), migrations.AddField( model_name='paidservicesmodel', name='ticket', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='ticket_extra_paid_service', to='tickets.ticketsmodel', verbose_name='ticket'), ), migrations.AddField( model_name='hotelmodel', name='ticket', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='ticket_hotel', to='tickets.ticketsmodel', verbose_name='ticket'), ), migrations.AddField( model_name='extraservicesmodel', name='ticket', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='ticket_extra_service', to='tickets.ticketsmodel', verbose_name='ticket'), ), ]