# Generated by Django 4.0.2 on 2022-02-08 21:36

from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
import django_cryptography.fields


class Migration(migrations.Migration):

    dependencies = [
        ('core', '0033_famille_mobile_alter_unite_incompatibilites'),
    ]

    operations = [
        migrations.CreateModel(
            name='ConfigurationSMS',
            fields=[
                ('idconfiguration', models.AutoField(db_column='IDconfiguration', primary_key=True, serialize=False, verbose_name='ID')),
                ('moteur', models.CharField(choices=[('mailjet', 'Mailjet')], help_text="Sélectionnez un moteur d'expédition.", max_length=200, verbose_name='Moteur')),
                ('token', django_cryptography.fields.encrypt(models.CharField(blank=True, help_text='Saisissez le token qui vous a été communiqué par votre fournisseur.', max_length=300, null=True, verbose_name='Token'))),
                ('nom_exp', models.CharField(blank=True, help_text="Saisissez le nom d'expéditeur qui doit apparaître dans le SMS.", max_length=300, null=True, verbose_name="Nom de l'expéditeur")),
            ],
            options={
                'verbose_name': 'configuration SMS',
                'verbose_name_plural': 'configurations SMS',
                'db_table': 'configurations_sms',
            },
        ),
        migrations.CreateModel(
            name='DestinataireSMS',
            fields=[
                ('iddestinataire', models.AutoField(db_column='IDdestinataire', primary_key=True, serialize=False, verbose_name='ID')),
                ('categorie', models.CharField(blank=True, max_length=300, null=True, verbose_name='Catégorie')),
                ('mobile', django_cryptography.fields.encrypt(models.EmailField(blank=True, max_length=300, null=True, verbose_name='Mobile'))),
                ('date_envoi', models.DateTimeField(blank=True, null=True, verbose_name="Date d'envoi")),
                ('resultat_envoi', models.CharField(blank=True, max_length=300, null=True, verbose_name="Résultat de l'envoi")),
                ('contact', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.contact', verbose_name='Contact')),
                ('famille', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.famille', verbose_name='Famille')),
                ('individu', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.individu', verbose_name='Individu')),
            ],
            options={
                'verbose_name': 'destinataire SMS',
                'verbose_name_plural': 'destinataires SMS',
                'db_table': 'destinataires_sms',
            },
        ),
        migrations.CreateModel(
            name='SMS',
            fields=[
                ('idsms', models.AutoField(db_column='IDsms', primary_key=True, serialize=False, verbose_name='ID')),
                ('objet', models.CharField(blank=True, max_length=300, null=True, verbose_name='Objet')),
                ('texte', models.TextField(blank=True, null=True, verbose_name='Texte')),
                ('date_creation', models.DateTimeField(auto_now_add=True, verbose_name='Date de création')),
                ('selection', models.CharField(choices=[('NON_ENVOYE', "Uniquemement les destinataires qui n'ont pas déjà reçu le message"), ('NON_ENVOYE_10', "Uniquemement les 10 premiers destinataires qui n'ont pas déjà reçu le message"), ('NON_ENVOYE_50', "Uniquemement les 50 premiers destinataires qui n'ont pas déjà reçu le message"), ('NON_ENVOYE_100', "Uniquemement les 100 premiers destinataires qui n'ont pas déjà reçu le message"), ('TOUS', 'Tous les destinataires')], default='NON_ENVOYE', max_length=200, verbose_name='Sélection')),
                ('verrouillage_destinataires', models.BooleanField(default=False, verbose_name='Verrouillages des destinataires')),
                ('configuration_sms', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.configurationsms', verbose_name='Configuration')),
                ('destinataires', models.ManyToManyField(blank=True, to='core.DestinataireSMS', verbose_name='Destinataires')),
                ('utilisateur', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Utilisateur')),
            ],
            options={
                'verbose_name': 'SMS',
                'verbose_name_plural': 'SMS',
                'db_table': 'sms',
            },
        ),
        migrations.AddField(
            model_name='structure',
            name='configuration_sms',
            field=models.ForeignKey(blank=True, help_text='Sélectionnez une configuration SMS dans la liste. Il est possible de créer de nouvelles configurations depuis le menu Paramétrage > Configurations SMS.', null=True, on_delete=django.db.models.deletion.PROTECT, to='core.configurationsms', verbose_name='Configuration SMS'),
        ),
    ]
