# Generated by Django 6.0.3 on 2026-03-22 06:59

import django.db.models.deletion
from django.conf import settings
from django.db import migrations, models


class Migration(migrations.Migration):

    dependencies = [
        ('accounts', '0001_initial'),
        ('auth', '0012_alter_user_first_name_max_length'),
        ('geo', '0003_hybrid_auth_google_id_login_pin'),
    ]

    operations = [
        migrations.AddField(
            model_name='user',
            name='accept_terms',
            field=models.BooleanField(default=False),
        ),
        migrations.AddField(
            model_name='user',
            name='date_of_birth',
            field=models.DateField(blank=True, null=True),
        ),
        migrations.AddField(
            model_name='user',
            name='google_id',
            field=models.CharField(blank=True, max_length=255, null=True, unique=True),
        ),
        migrations.AddField(
            model_name='user',
            name='is_onboarding_complete',
            field=models.BooleanField(default=False),
        ),
        migrations.AddField(
            model_name='user',
            name='location',
            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='geo.location'),
        ),
        migrations.AddField(
            model_name='user',
            name='login_pin',
            field=models.CharField(blank=True, max_length=128, null=True),
        ),
        migrations.AddField(
            model_name='user',
            name='occupation',
            field=models.CharField(blank=True, choices=[('SELF_EMPLOYED', 'Self Employed'), ('BUSINESS_OWNER', 'Business Owner'), ('GOVT_EMPLOYEE', 'Govt Employee'), ('PRIVATE_EMPLOYEE', 'Private Employee'), ('OTHER', 'Other')], max_length=30, null=True),
        ),
        migrations.AddField(
            model_name='user',
            name='pan_number',
            field=models.CharField(blank=True, max_length=20, null=True, unique=True),
        ),
        migrations.AddField(
            model_name='user',
            name='pincode',
            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='geo.pincode'),
        ),
        migrations.AddField(
            model_name='user',
            name='referral_code',
            field=models.CharField(blank=True, db_index=True, max_length=10, null=True, unique=True),
        ),
        migrations.AddField(
            model_name='user',
            name='referred_by',
            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='referrals', to=settings.AUTH_USER_MODEL),
        ),
        migrations.AlterField(
            model_name='user',
            name='auth_provider',
            field=models.CharField(choices=[('mobile', 'Mobile'), ('google', 'Google'), ('email', 'Email'), ('apple', 'Apple')], default='mobile', max_length=20),
        ),
        migrations.AddIndex(
            model_name='user',
            index=models.Index(fields=['referral_code'], name='accounts_us_referra_2cbfb5_idx'),
        ),
        migrations.AddIndex(
            model_name='user',
            index=models.Index(fields=['mobile'], name='accounts_us_mobile_646276_idx'),
        ),
    ]
