# Generated by Django 6.0 on 2026-02-04 08:38

import collections_management.models
import django.db.models.deletion
from django.conf import settings
from django.db import migrations, models


class Migration(migrations.Migration):

    dependencies = [
        ('collections_management', '0002_collectionemail_collectionemailattachment_and_more'),
        ('tenancy', '0003_tenant_address_line1_tenant_address_line2_and_more'),
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.AlterModelOptions(
            name='collectionemail',
            options={},
        ),
        migrations.AlterModelOptions(
            name='collectionemailattachment',
            options={},
        ),
        migrations.RemoveIndex(
            model_name='collectionemail',
            name='collections_tenant__66080c_idx',
        ),
        migrations.RemoveIndex(
            model_name='collectionemail',
            name='collections_tenant__325567_idx',
        ),
        migrations.AddField(
            model_name='collectionemail',
            name='error_message',
            field=models.TextField(blank=True, default=''),
        ),
        migrations.AddField(
            model_name='collectionemail',
            name='meta',
            field=models.JSONField(blank=True, default=dict),
        ),
        migrations.AddField(
            model_name='collectionemail',
            name='provider',
            field=models.CharField(blank=True, default='', max_length=64),
        ),
        migrations.AddField(
            model_name='collectionemail',
            name='provider_message_id',
            field=models.CharField(blank=True, default='', max_length=255),
        ),
        migrations.AddField(
            model_name='collectionemail',
            name='status',
            field=models.CharField(choices=[('draft', 'Draft'), ('queued', 'Queued'), ('sent', 'Sent'), ('failed', 'Failed'), ('received', 'Received')], db_index=True, default='draft', max_length=20),
        ),
        migrations.AddField(
            model_name='collectionemailattachment',
            name='created_by',
            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='created_collection_email_attachments', to=settings.AUTH_USER_MODEL),
        ),
        migrations.AddField(
            model_name='collectionemailattachment',
            name='tenant',
            field=models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, related_name='collection_email_attachments', to='tenancy.tenant'),
            preserve_default=False,
        ),
        migrations.AlterField(
            model_name='collectionemail',
            name='action',
            field=models.ForeignKey(blank=True, help_text='Action timeline associée (type=email).', null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='email_evidences', to='collections_management.collectionaction'),
        ),
        migrations.AlterField(
            model_name='collectionemail',
            name='direction',
            field=models.CharField(choices=[('outbound', 'Outbound'), ('inbound', 'Inbound')], default='outbound', max_length=20),
        ),
        migrations.AlterField(
            model_name='collectionemail',
            name='raw_eml',
            field=models.FileField(blank=True, null=True, upload_to=collections_management.models._collection_email_upload_to),
        ),
        migrations.AlterField(
            model_name='collectionemail',
            name='source',
            field=models.CharField(choices=[('acx', 'ACX'), ('outlook', 'Outlook'), ('other', 'Other')], default='acx', max_length=20),
        ),
        migrations.AlterField(
            model_name='collectionemailattachment',
            name='content_type',
            field=models.CharField(blank=True, default='', max_length=127),
        ),
        migrations.AlterField(
            model_name='collectionemailattachment',
            name='file',
            field=models.FileField(upload_to=collections_management.models._collection_email_upload_to),
        ),
        migrations.AddIndex(
            model_name='collectionemail',
            index=models.Index(fields=['tenant', 'case', 'created_at'], name='collections_tenant__22d3bf_idx'),
        ),
        migrations.AddIndex(
            model_name='collectionemail',
            index=models.Index(fields=['tenant', 'status'], name='collections_tenant__5154c4_idx'),
        ),
        migrations.AddIndex(
            model_name='collectionemailattachment',
            index=models.Index(fields=['tenant', 'email', 'created_at'], name='collections_tenant__6d5aaa_idx'),
        ),
    ]
