forked from val-lop20/Pagina-de-Asistencia-MAC
55 lines
1.9 KiB
Python
55 lines
1.9 KiB
Python
# Generated by Django 5.2.6 on 2025-10-02 00:21
|
|
|
|
from django.db import migrations
|
|
|
|
|
|
def migrate_external_users(apps, schema_editor):
|
|
"""Migrar datos de events.ExternalUser a authentication.ExternalUser"""
|
|
# Obtener los modelos de las versiones históricas
|
|
EventsExternalUser = apps.get_model('events', 'ExternalUser')
|
|
AuthExternalUser = apps.get_model('authentication', 'ExternalUser')
|
|
|
|
# Copiar todos los usuarios externos
|
|
for old_user in EventsExternalUser.objects.all():
|
|
AuthExternalUser.objects.create(
|
|
id=old_user.id,
|
|
full_name=old_user.full_name,
|
|
account_number=old_user.account_number,
|
|
status=old_user.status,
|
|
approved_by=old_user.approved_by,
|
|
rejection_reason=old_user.rejection_reason,
|
|
created_at=old_user.created_at,
|
|
processed_at=old_user.processed_at,
|
|
)
|
|
|
|
|
|
def reverse_migrate_external_users(apps, schema_editor):
|
|
"""Revertir migración de datos"""
|
|
AuthExternalUser = apps.get_model('authentication', 'ExternalUser')
|
|
EventsExternalUser = apps.get_model('events', 'ExternalUser')
|
|
|
|
# Copiar de vuelta
|
|
for new_user in AuthExternalUser.objects.all():
|
|
EventsExternalUser.objects.create(
|
|
id=new_user.id,
|
|
full_name=new_user.full_name,
|
|
account_number=new_user.account_number,
|
|
status=new_user.status,
|
|
approved_by=new_user.approved_by,
|
|
rejection_reason=new_user.rejection_reason,
|
|
created_at=new_user.created_at,
|
|
processed_at=new_user.processed_at,
|
|
)
|
|
|
|
|
|
class Migration(migrations.Migration):
|
|
|
|
dependencies = [
|
|
('authentication', '0006_externaluser'),
|
|
('events', '0004_auto_20251001_1400'),
|
|
]
|
|
|
|
operations = [
|
|
migrations.RunPython(migrate_external_users, reverse_migrate_external_users),
|
|
]
|