summaryrefslogtreecommitdiff
path: root/ishtar_common/migrations/0232_auto_20231115_1616.py
blob: e0cf37411c2b7785fff83e0a4acdd53f60e3ffe2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
# Generated by Django 2.2.24 on 2023-11-15 16:16

import django.core.validators
from django.db import migrations, models
import django.db.models.deletion
import ishtar_common.utils


class Migration(migrations.Migration):

    dependencies = [
        ('ishtar_common', '0231_set_default_profile_value'),
    ]

    operations = [
        migrations.CreateModel(
            name='ImporterGroup',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=200, verbose_name='Name')),
                ('slug', models.SlugField(max_length=100, unique=True, verbose_name='Slug')),
                ('description', models.TextField(blank=True, default='', verbose_name='Description')),
                ('available', models.BooleanField(default=True, verbose_name='Available')),
                ('users', models.ManyToManyField(blank=True, to='ishtar_common.IshtarUser', verbose_name='Users')),
            ],
            options={
                'verbose_name': 'Importer - Group',
                'verbose_name_plural': 'Importer - Groups',
                'ordering': ('name',),
            },
        ),
        migrations.AlterModelOptions(
            name='import',
            options={'permissions': (('view_own_import', 'Can view own Import'), ('change_own_import', 'Can change own Import'), ('delete_own_import', 'Can delete own Import')), 'verbose_name': 'Import - Import', 'verbose_name_plural': 'Import - Imports'},
        ),
        migrations.AlterModelOptions(
            name='itemkey',
            options={'verbose_name': 'Import - Item key', 'verbose_name_plural': 'Import - Item keys'},
        ),
        migrations.AddField(
            model_name='document',
            name='imports_updated',
            field=models.ManyToManyField(blank=True, related_name='import_updated_ishtar_common_document', to='ishtar_common.Import'),
        ),
        migrations.AddField(
            model_name='geovectordata',
            name='imports_updated',
            field=models.ManyToManyField(blank=True, related_name='import_updated_ishtar_common_geovectordata', to='ishtar_common.Import'),
        ),
        migrations.AddField(
            model_name='import',
            name='imported_values',
            field=models.FileField(blank=True, help_text='La taille maximale supportée pour le fichier est de 100 Mo.', max_length=220, null=True, upload_to='upload/imports/%Y/%m/', verbose_name='Imported values'),
        ),
        migrations.AddField(
            model_name='import',
            name='next_import',
            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='imports', to='ishtar_common.Import', verbose_name='Next import'),
        ),
        migrations.AddField(
            model_name='importerdefault',
            name='required_fields',
            field=models.CharField(blank=True, default='', help_text='Theses defaults values only apply if the designated fields are not empty. Use the "__" notation to pass between models.Leave empty to always apply.', max_length=500, verbose_name='Required fields'),
        ),
        migrations.AddField(
            model_name='importertype',
            name='archive_required',
            field=models.BooleanField(default=False, verbose_name='Archive required'),
        ),
        migrations.AddField(
            model_name='importertype',
            name='ignore_errors',
            field=models.TextField(blank=True, help_text='If an error is encountered with the following character strings, the error is not reported in the error file. Each message is separated with a line break.', null=True, verbose_name='Error messages to ignore'),
        ),
        migrations.AddField(
            model_name='importertype',
            name='is_import',
            field=models.BooleanField(default=True, verbose_name='Can be import'),
        ),
        migrations.AddField(
            model_name='importertype',
            name='pre_import_message',
            field=models.TextField(blank=True, default='', max_length=500, verbose_name='Pre-import form message'),
        ),
        migrations.AddField(
            model_name='importertype',
            name='tab_number',
            field=models.PositiveIntegerField(default=1, help_text='When using an Excel or Calc file choose the tab number. Keep it to 1 by default.', validators=[django.core.validators.MinValueValidator(1)], verbose_name='Tab number'),
        ),
        migrations.AddField(
            model_name='organization',
            name='imports_updated',
            field=models.ManyToManyField(blank=True, related_name='import_updated_ishtar_common_organization', to='ishtar_common.Import'),
        ),
        migrations.AddField(
            model_name='person',
            name='imports_updated',
            field=models.ManyToManyField(blank=True, related_name='import_updated_ishtar_common_person', to='ishtar_common.Import'),
        ),
        migrations.AddField(
            model_name='town',
            name='imports_updated',
            field=models.ManyToManyField(blank=True, related_name='import_updated_ishtar_common_town', to='ishtar_common.Import'),
        ),
        migrations.AlterField(
            model_name='import',
            name='imported_images',
            field=models.FileField(blank=True, help_text='La taille maximale supportée pour le fichier est de 100 Mo.', max_length=220, null=True, upload_to='upload/imports/%Y/%m/', verbose_name='Associated documents (zip file)'),
        ),
        migrations.AlterField(
            model_name='importercolumn',
            name='col_number',
            field=models.SmallIntegerField(default=1, help_text='Column number in the table. Put 0 or negative number for pre-importer field.', verbose_name='Column number'),
        ),
        migrations.AlterField(
            model_name='importerdefault',
            name='target',
            field=models.CharField(help_text='The target of the default values. Can be set to empty with "-". Use the "__" notation to pass between models.', max_length=500, verbose_name='Target'),
        ),
        migrations.CreateModel(
            name='ImportGroup',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=500, null=True, verbose_name='Name')),
                ('imported_file', models.FileField(blank=True, help_text='La taille maximale supportée pour le fichier est de 100 Mo.', max_length=220, null=True, upload_to='upload/imports/%Y/%m/', verbose_name='Imported file')),
                ('imported_images', models.FileField(blank=True, help_text='La taille maximale supportée pour le fichier est de 100 Mo.', max_length=220, null=True, upload_to='upload/imports/%Y/%m/', verbose_name='Associated documents (zip file)')),
                ('archive_file', models.FileField(blank=True, help_text='La taille maximale supportée pour le fichier est de 100 Mo.', max_length=255, null=True, upload_to='upload/imports/%Y/%m/', verbose_name='Archive file')),
                ('encoding', models.CharField(choices=[('windows-1252', 'windows-1252'), ('ISO-8859-15', 'ISO-8859-15'), ('utf-8', 'utf-8')], default='utf-8', help_text='Only required for CSV file', max_length=15, verbose_name='Encoding')),
                ('csv_sep', models.CharField(choices=[(',', ','), (';', ';'), ('|', '|')], default=',', help_text='Separator for CSV file. Standard is comma but Microsoft Excel do not follow this standard and use semi-colon.', max_length=1, verbose_name='CSV separator')),
                ('skip_lines', models.IntegerField(default=1, help_text='Number of header lines in your file (can be 0 and should be 0 for geopackage or Shapefile).', verbose_name='Skip lines')),
                ('creation_date', models.DateTimeField(auto_now_add=True, null=True, verbose_name='Creation date')),
                ('end_date', models.DateTimeField(auto_now_add=True, null=True, verbose_name='End date')),
                ('current_import', models.PositiveIntegerField(blank=True, null=True, verbose_name='Current import')),
                ('state', models.CharField(choices=[('C', 'Created'), ('AP', 'Analyse in progress'), ('A', 'Analysed'), ('IQ', 'Import in queue'), ('IP', 'Import in progress'), ('PP', 'Post-processing in progress'), ('FE', 'Finished with errors'), ('F', 'Finished'), ('AC', 'Archived')], default='C', max_length=2, verbose_name='State')),
                ('importer_type', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.ImporterGroup', verbose_name='Importer group type')),
                ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='ishtar_common.IshtarUser')),
            ],
            options={
                'verbose_name': 'Import - Group',
                'verbose_name_plural': 'Import - Groups',
                'permissions': (('view_own_importgroup', 'Can view own Import Group'), ('change_own_importgroup', 'Can change own Import Group'), ('delete_own_importgroup', 'Can delete own Import Group')),
            },
            bases=(models.Model, ishtar_common.utils.OwnPerms, ishtar_common.utils.SheetItem),
        ),
        migrations.AddField(
            model_name='import',
            name='group',
            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='imports', to='ishtar_common.ImportGroup', verbose_name='Group'),
        ),
        migrations.CreateModel(
            name='ImportLineError',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('line', models.PositiveIntegerField(verbose_name='Line')),
                ('ignored', models.BooleanField(default=False, verbose_name='Ignored')),
                ('import_item', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='error_lines', to='ishtar_common.Import')),
            ],
            options={
                'verbose_name': 'Import - Ignored error',
                'verbose_name_plural': 'Import - Ignored error',
                'ordering': ('import_item', 'line'),
                'unique_together': {('line', 'import_item')},
            },
        ),
        migrations.CreateModel(
            name='ImporterGroupImporter',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('order', models.PositiveIntegerField(default=10, validators=[django.core.validators.MinValueValidator(1)], verbose_name='Order')),
                ('group', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='importer_types', to='ishtar_common.ImporterGroup')),
                ('importer_type', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='groups', to='ishtar_common.ImporterType')),
            ],
            options={
                'verbose_name': 'Importer - Group <-> Importer',
                'ordering': ('group', 'order'),
                'unique_together': {('group', 'order')},
            },
        ),
        migrations.CreateModel(
            name='ImportColumnValue',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('value', models.TextField(blank=True, default='')),
                ('column', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.ImporterColumn')),
                ('import_item', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.Import')),
            ],
            options={
                'verbose_name': 'Import - Pre-import value',
                'verbose_name_plural': 'Import - Pre-import values',
                'unique_together': {('column', 'import_item')},
            },
        ),
    ]