# Generated by Django 6.0.3 on 2026-04-04 23:54

from django.db import migrations, models


def seed_roles(apps, schema_editor):
    Role = apps.get_model('accounts', 'Role')
    defaults = [
        ('PUBLIC', 'Public'),
        ('USER', 'User'),
        ('ADMIN', 'Admin'),
        ('BRAND_AMBASSADOR', 'Brand Ambassador'),
    ]
    for code, name in defaults:
        Role.objects.get_or_create(code=code, defaults={'name': name, 'is_active': True})


def unseed_roles(apps, schema_editor):
    Role = apps.get_model('accounts', 'Role')
    Role.objects.filter(code__in=['PUBLIC', 'USER', 'ADMIN', 'BRAND_AMBASSADOR']).delete()


class Migration(migrations.Migration):

    dependencies = [
        ('accounts', '10002_alter_user_location'),
    ]

    operations = [
        migrations.CreateModel(
            name='Role',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('code', models.CharField(db_index=True, max_length=50, unique=True)),
                ('name', models.CharField(max_length=100, unique=True)),
                ('is_active', models.BooleanField(default=True)),
            ],
            options={
                'ordering': ['name'],
            },
        ),
        migrations.AlterField(
            model_name='user',
            name='role',
            field=models.CharField(db_index=True, default='PUBLIC', max_length=50),
        ),
        migrations.RunPython(seed_roles, unseed_roles),
    ]
