# Generated by Django 5.2.7 on 2025-12-06 15:57 import django.db.models.deletion import django.utils.timezone from django.conf import settings from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0012_alter_user_first_name_max_length'), ] operations = [ migrations.CreateModel( name='Notification', 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')), ('description', models.TextField(verbose_name='Description')), ('notification_type', models.CharField(choices=[('System', 'System'), ('Another', 'Another')], max_length=255, verbose_name='Type')), ('long', models.FloatField(verbose_name='Long')), ('lat', models.FloatField(verbose_name='Lat')), ], options={ 'verbose_name': 'Notification', 'verbose_name_plural': 'Notifications', 'db_table': 'notification', }, ), migrations.CreateModel( name='UserLike', 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)), ], options={ 'verbose_name': 'User Like', 'verbose_name_plural': 'User Likes', 'db_table': 'user_like', }, ), migrations.CreateModel( name='UserNotification', 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)), ('is_read', models.BooleanField(default=False, verbose_name='Read')), ], options={ 'verbose_name': 'User Notification', 'verbose_name_plural': 'User Notifications', 'db_table': 'user_notification', }, ), migrations.CreateModel( name='User', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('password', models.CharField(max_length=128, verbose_name='password')), ('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')), ('is_superuser', models.BooleanField(default=False, help_text='Designates that this user has all permissions without explicitly assigning them.', verbose_name='superuser status')), ('first_name', models.CharField(blank=True, max_length=150, verbose_name='first name')), ('last_name', models.CharField(blank=True, max_length=150, verbose_name='last name')), ('email', models.EmailField(blank=True, max_length=254, verbose_name='email address')), ('is_staff', models.BooleanField(default=False, help_text='Designates whether the user can log into this admin site.', verbose_name='staff status')), ('is_active', models.BooleanField(default=True, help_text='Designates whether this user should be treated as active. Unselect this instead of deleting accounts.', verbose_name='active')), ('date_joined', models.DateTimeField(default=django.utils.timezone.now, verbose_name='date joined')), ('phone', models.CharField(max_length=255, unique=True)), ('username', models.CharField(blank=True, max_length=255, null=True)), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('validated_at', models.DateTimeField(blank=True, null=True)), ('is_verify', models.BooleanField(default=False)), ('account_type', models.CharField(choices=[('personal', 'Personal'), ('business', 'Business')], default='personal', max_length=255)), ('role', models.CharField(choices=[('superuser', 'Superuser'), ('admin', 'Admin'), ('user', 'User')], default='user', max_length=255)), ('avatar', models.ImageField(default='avatars/default.png', upload_to='avatars/', verbose_name='Avatar')), ('groups', models.ManyToManyField(blank=True, help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', related_name='user_set', related_query_name='user', to='auth.group', verbose_name='groups')), ('user_permissions', models.ManyToManyField(blank=True, help_text='Specific permissions for this user.', related_name='user_set', related_query_name='user', to='auth.permission', verbose_name='user permissions')), ], options={ 'verbose_name': 'user', 'verbose_name_plural': 'users', 'abstract': False, }, ), migrations.CreateModel( name='Address', 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')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='addresses', to=settings.AUTH_USER_MODEL, verbose_name='User')), ], options={ 'verbose_name': 'Address', 'verbose_name_plural': 'Addresses', 'db_table': 'address', }, ), migrations.CreateModel( name='Business', 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='Business Name')), ('work_time', models.CharField(max_length=255, verbose_name='Work Time')), ('contact', models.CharField(max_length=255, verbose_name='Contact')), ('instagram', models.CharField(max_length=255, verbose_name='Instagram')), ('facebook', models.CharField(max_length=255, verbose_name='Facebook')), ('telegram', models.CharField(max_length=255, verbose_name='Telegram')), ('bio', models.TextField(verbose_name='Bio')), ('address', models.CharField(max_length=255, verbose_name='Address Name')), ('long', models.FloatField(verbose_name='Longitude')), ('lat', models.FloatField(verbose_name='Latitude')), ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='business', to=settings.AUTH_USER_MODEL, verbose_name='User')), ], options={ 'verbose_name': 'Business', 'verbose_name_plural': 'Business', 'db_table': 'business', }, ), migrations.CreateModel( name='ResetToken', 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)), ('token', models.CharField(max_length=255, unique=True)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'Reset Token', 'verbose_name_plural': 'Reset Tokens', }, ), migrations.CreateModel( name='SearchHistory', 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)), ('value', models.CharField(max_length=255, verbose_name='Search History')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='User')), ], options={ 'verbose_name': 'Search History', 'verbose_name_plural': 'Search History', 'db_table': 'search_history', }, ), ]