# Generated by Django 3.1 on 2023-09-03 06:29

import api.models
from django.db import migrations, models
from django.db import connection


class Migration(migrations.Migration):

    dependencies = [
        ('api', '0017_salerecord_business'),
    ]

    def set_my_defaults(apps, schema_editor):
        with connection.cursor() as cursor:
            cursor.execute("SELECT id FROM api_customer")
            for customer in cursor.fetchall():
                id = customer[0]
                code = api.models._generate_validation_code()
                cursor.execute("UPDATE api_customer SET validation_code = %s WHERE id = %s", [code, id])

    def reverse_func(apps, schema_editor):
        pass  # code for reverting migration, if any

    operations = [
        migrations.AddField(
            model_name='customer',
            name='validation_code',
            field=models.CharField(max_length=20, null=True, unique=True),
        ),
        migrations.RunPython(set_my_defaults, reverse_func),
        migrations.AlterField(
            model_name='customer',
            name='validation_code',
            field=models.CharField(default=api.models._generate_validation_code, max_length=20, null=True, unique=True),
        ),
    ]
