# Generated by Django 5.2.4 on 2026-05-07 18:30

from django.db import migrations, models

from api.models import TtPosModuleGroup
from api.utils import get_auto_generate_name


def migrate_existing_codes(apps, schema_editor):
    # Use apps.get_model to safely get the model state
    TtPosModuleGroup = apps.get_model('api', 'TtPosModuleGroup')
    pos_module_groups = TtPosModuleGroup.objects.all().order_by('id')
    new_code = None

    for pos_module_group in pos_module_groups:
        new_code = get_auto_generate_name(new_code, "MV", 10)
        pos_module_group.code = new_code

    if pos_module_groups:
        TtPosModuleGroup.objects.bulk_update(pos_module_groups, fields=["code"], batch_size=500)
class Migration(migrations.Migration):

    dependencies = [
        ('api', '0061_alter_ttlocation_capacity'),
    ]

    operations = [
        migrations.AddField(
            model_name='ttposmodulegroup',
            name='code',
            field=models.CharField(max_length=150, null=True),
        ),
        migrations.RunPython(migrate_existing_codes),
    ]

