summaryrefslogtreecommitdiff
path: root/ishtar_common/migrations/0231_auto_20231115_1616.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2023-11-15 16:38:21 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2024-02-05 10:51:52 +0100
commit07edef1edb1395c3035bcd178f7bb6bb71ae8cf0 (patch)
tree39c901360c52bdaa68fec0270e5498bc801ab6b7 /ishtar_common/migrations/0231_auto_20231115_1616.py
parentf56fd82f15ab167f722e568b781427d0fb28535e (diff)
downloadIshtar-07edef1edb1395c3035bcd178f7bb6bb71ae8cf0.tar.bz2
Ishtar-07edef1edb1395c3035bcd178f7bb6bb71ae8cf0.zip
🗃️ imports: merge migrations
Diffstat (limited to 'ishtar_common/migrations/0231_auto_20231115_1616.py')
-rw-r--r--ishtar_common/migrations/0231_auto_20231115_1616.py193
1 files changed, 193 insertions, 0 deletions
diff --git a/ishtar_common/migrations/0231_auto_20231115_1616.py b/ishtar_common/migrations/0231_auto_20231115_1616.py
new file mode 100644
index 000000000..0f692d5d2
--- /dev/null
+++ b/ishtar_common/migrations/0231_auto_20231115_1616.py
@@ -0,0 +1,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', '0230_auto_20231114_1334'),
+ ]
+
+ 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'), ('add_own_import', 'Can add 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'), ('add_own_importgroup', 'Can add 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')},
+ },
+ ),
+ ]