From f8ba2e5371c8944c6a72808de963ef349f3ad115 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 17 Mar 2022 12:13:37 +0100 Subject: Geodata: adapt importer model --- .../migrations/0107_auto_20220222_1534.py | 71 -------- .../migrations/0107_auto_20220317_1120.py | 71 ++++++++ .../migrations/0109_auto_20220222_1534.py | 142 --------------- .../migrations/0109_auto_20220317_1120.py | 142 +++++++++++++++ .../migrations/0109_auto_20220222_1534.py | 201 --------------------- .../migrations/0109_auto_20220317_1120.py | 201 +++++++++++++++++++++ .../migrations/0113_auto_20220222_1535.py | 171 ------------------ .../migrations/0113_auto_20220317_1120.py | 171 ++++++++++++++++++ ishtar_common/forms_common.py | 1 - .../migrations/0220_auto_20220222_1534.py | 133 -------------- .../migrations/0220_auto_20220317_1120.py | 148 +++++++++++++++ ishtar_common/migrations/0221_importertype_type.py | 18 -- ishtar_common/models_imports.py | 24 ++- requirements.txt | 2 + 14 files changed, 754 insertions(+), 742 deletions(-) delete mode 100644 archaeological_context_records/migrations/0107_auto_20220222_1534.py create mode 100644 archaeological_context_records/migrations/0107_auto_20220317_1120.py delete mode 100644 archaeological_finds/migrations/0109_auto_20220222_1534.py create mode 100644 archaeological_finds/migrations/0109_auto_20220317_1120.py delete mode 100644 archaeological_operations/migrations/0109_auto_20220222_1534.py create mode 100644 archaeological_operations/migrations/0109_auto_20220317_1120.py delete mode 100644 archaeological_warehouse/migrations/0113_auto_20220222_1535.py create mode 100644 archaeological_warehouse/migrations/0113_auto_20220317_1120.py delete mode 100644 ishtar_common/migrations/0220_auto_20220222_1534.py create mode 100644 ishtar_common/migrations/0220_auto_20220317_1120.py delete mode 100644 ishtar_common/migrations/0221_importertype_type.py diff --git a/archaeological_context_records/migrations/0107_auto_20220222_1534.py b/archaeological_context_records/migrations/0107_auto_20220222_1534.py deleted file mode 100644 index 319c97824..000000000 --- a/archaeological_context_records/migrations/0107_auto_20220222_1534.py +++ /dev/null @@ -1,71 +0,0 @@ -# Generated by Django 2.2.24 on 2022-02-22 15:34 - -import django.contrib.postgres.fields.jsonb -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('ishtar_common', '0220_auto_20220222_1534'), - ('archaeological_context_records', '0106_auto_20210326_1434'), - ] - - operations = [ - migrations.AddField( - model_name='contextrecord', - name='geodata', - field=models.ManyToManyField(blank=True, related_name='related_items_archaeological_context_records_contextrecord', to='ishtar_common.GeoVectorData'), - ), - migrations.AddField( - model_name='contextrecord', - name='main_geodata', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_related_items_archaeological_context_records_contextrecord', to='ishtar_common.GeoVectorData'), - ), - migrations.AddField( - model_name='historicalcontextrecord', - name='main_geodata', - field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.GeoVectorData'), - ), - migrations.AlterField( - model_name='contextrecord', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='contextrecord', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='contextrecord', - name='spatial_reference_system', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System'), - ), - migrations.AlterField( - model_name='dating', - name='period', - field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='archaeological_operations.Period', verbose_name='Period'), - ), - migrations.AlterField( - model_name='historicalcontextrecord', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicalcontextrecord', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='recordrelations', - name='relation_type', - field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='archaeological_context_records.RelationType'), - ), - migrations.AlterField( - model_name='relationtype', - name='inverse_relation', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='archaeological_context_records.RelationType', verbose_name='Inverse relation'), - ), - ] diff --git a/archaeological_context_records/migrations/0107_auto_20220317_1120.py b/archaeological_context_records/migrations/0107_auto_20220317_1120.py new file mode 100644 index 000000000..0fec6fb6c --- /dev/null +++ b/archaeological_context_records/migrations/0107_auto_20220317_1120.py @@ -0,0 +1,71 @@ +# Generated by Django 2.2.24 on 2022-03-17 11:20 + +import django.contrib.postgres.fields.jsonb +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('ishtar_common', '0220_auto_20220317_1120'), + ('archaeological_context_records', '0106_auto_20210326_1434'), + ] + + operations = [ + migrations.AddField( + model_name='contextrecord', + name='geodata', + field=models.ManyToManyField(blank=True, related_name='related_items_archaeological_context_records_contextrecord', to='ishtar_common.GeoVectorData'), + ), + migrations.AddField( + model_name='contextrecord', + name='main_geodata', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_related_items_archaeological_context_records_contextrecord', to='ishtar_common.GeoVectorData'), + ), + migrations.AddField( + model_name='historicalcontextrecord', + name='main_geodata', + field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.GeoVectorData'), + ), + migrations.AlterField( + model_name='contextrecord', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='contextrecord', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='contextrecord', + name='spatial_reference_system', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System'), + ), + migrations.AlterField( + model_name='dating', + name='period', + field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='archaeological_operations.Period', verbose_name='Period'), + ), + migrations.AlterField( + model_name='historicalcontextrecord', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicalcontextrecord', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='recordrelations', + name='relation_type', + field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='archaeological_context_records.RelationType'), + ), + migrations.AlterField( + model_name='relationtype', + name='inverse_relation', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='archaeological_context_records.RelationType', verbose_name='Inverse relation'), + ), + ] diff --git a/archaeological_finds/migrations/0109_auto_20220222_1534.py b/archaeological_finds/migrations/0109_auto_20220222_1534.py deleted file mode 100644 index 0e7cafdde..000000000 --- a/archaeological_finds/migrations/0109_auto_20220222_1534.py +++ /dev/null @@ -1,142 +0,0 @@ -# Generated by Django 2.2.24 on 2022-02-22 15:34 - -import archaeological_finds.models_treatments -import django.contrib.postgres.fields.jsonb -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('ishtar_common', '0220_auto_20220222_1534'), - ('archaeological_finds', '0108_auto_20210602_2234'), - ] - - operations = [ - migrations.AddField( - model_name='basefind', - name='geodata', - field=models.ManyToManyField(blank=True, related_name='related_items_archaeological_finds_basefind', to='ishtar_common.GeoVectorData'), - ), - migrations.AddField( - model_name='basefind', - name='main_geodata', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_related_items_archaeological_finds_basefind', to='ishtar_common.GeoVectorData'), - ), - migrations.AddField( - model_name='historicalbasefind', - name='main_geodata', - field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.GeoVectorData'), - ), - migrations.AlterField( - model_name='basefind', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='basefind', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='basefind', - name='spatial_reference_system', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System'), - ), - migrations.AlterField( - model_name='find', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='find', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicalbasefind', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicalbasefind', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicalfind', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicalfind', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicaltreatment', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicaltreatment', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicaltreatmentfile', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicaltreatmentfile', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='property', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='property', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='treatment', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='treatment', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='treatment', - name='treatment_state', - field=models.ForeignKey(default=archaeological_finds.models_treatments.TreatmentState.get_default, on_delete=django.db.models.deletion.PROTECT, to='archaeological_finds.TreatmentState', verbose_name='State'), - ), - migrations.AlterField( - model_name='treatmentfile', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='treatmentfile', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='treatmentfile', - name='type', - field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='archaeological_finds.TreatmentFileType', verbose_name='Treatment request type'), - ), - migrations.AlterField( - model_name='treatmentfiletype', - name='treatment_type', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='archaeological_finds.TreatmentType'), - ), - ] diff --git a/archaeological_finds/migrations/0109_auto_20220317_1120.py b/archaeological_finds/migrations/0109_auto_20220317_1120.py new file mode 100644 index 000000000..1e53b9633 --- /dev/null +++ b/archaeological_finds/migrations/0109_auto_20220317_1120.py @@ -0,0 +1,142 @@ +# Generated by Django 2.2.24 on 2022-03-17 11:20 + +import archaeological_finds.models_treatments +import django.contrib.postgres.fields.jsonb +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('ishtar_common', '0220_auto_20220317_1120'), + ('archaeological_finds', '0108_auto_20210602_2234'), + ] + + operations = [ + migrations.AddField( + model_name='basefind', + name='geodata', + field=models.ManyToManyField(blank=True, related_name='related_items_archaeological_finds_basefind', to='ishtar_common.GeoVectorData'), + ), + migrations.AddField( + model_name='basefind', + name='main_geodata', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_related_items_archaeological_finds_basefind', to='ishtar_common.GeoVectorData'), + ), + migrations.AddField( + model_name='historicalbasefind', + name='main_geodata', + field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.GeoVectorData'), + ), + migrations.AlterField( + model_name='basefind', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='basefind', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='basefind', + name='spatial_reference_system', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System'), + ), + migrations.AlterField( + model_name='find', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='find', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicalbasefind', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicalbasefind', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicalfind', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicalfind', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicaltreatment', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicaltreatment', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicaltreatmentfile', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicaltreatmentfile', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='property', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='property', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='treatment', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='treatment', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='treatment', + name='treatment_state', + field=models.ForeignKey(default=archaeological_finds.models_treatments.TreatmentState.get_default, on_delete=django.db.models.deletion.PROTECT, to='archaeological_finds.TreatmentState', verbose_name='State'), + ), + migrations.AlterField( + model_name='treatmentfile', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='treatmentfile', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='treatmentfile', + name='type', + field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='archaeological_finds.TreatmentFileType', verbose_name='Treatment request type'), + ), + migrations.AlterField( + model_name='treatmentfiletype', + name='treatment_type', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='archaeological_finds.TreatmentType'), + ), + ] diff --git a/archaeological_operations/migrations/0109_auto_20220222_1534.py b/archaeological_operations/migrations/0109_auto_20220222_1534.py deleted file mode 100644 index c815afab9..000000000 --- a/archaeological_operations/migrations/0109_auto_20220222_1534.py +++ /dev/null @@ -1,201 +0,0 @@ -# Generated by Django 2.2.24 on 2022-02-22 15:34 - -import django.contrib.postgres.fields.jsonb -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('ishtar_common', '0220_auto_20220222_1534'), - ('archaeological_operations', '0108_auto_20220214_1920'), - ] - - operations = [ - migrations.AddField( - model_name='archaeologicalsite', - name='geodata', - field=models.ManyToManyField(blank=True, related_name='related_items_archaeological_operations_archaeologicalsite', to='ishtar_common.GeoVectorData'), - ), - migrations.AddField( - model_name='archaeologicalsite', - name='main_geodata', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_related_items_archaeological_operations_archaeologicalsite', to='ishtar_common.GeoVectorData'), - ), - migrations.AddField( - model_name='historicalarchaeologicalsite', - name='main_geodata', - field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.GeoVectorData'), - ), - migrations.AddField( - model_name='historicaloperation', - name='main_geodata', - field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.GeoVectorData'), - ), - migrations.AddField( - model_name='operation', - name='geodata', - field=models.ManyToManyField(blank=True, related_name='related_items_archaeological_operations_operation', to='ishtar_common.GeoVectorData'), - ), - migrations.AddField( - model_name='operation', - name='main_geodata', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_related_items_archaeological_operations_operation', to='ishtar_common.GeoVectorData'), - ), - migrations.AlterField( - model_name='administrativeact', - name='act_type', - field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='archaeological_operations.ActType', verbose_name='Act type'), - ), - migrations.AlterField( - model_name='administrativeact', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='administrativeact', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='archaeologicalsite', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='archaeologicalsite', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='archaeologicalsite', - name='spatial_reference_system', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System'), - ), - migrations.AlterField( - model_name='historicaladministrativeact', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicaladministrativeact', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicalarchaeologicalsite', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicalarchaeologicalsite', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicaloperation', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicaloperation', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicaloperation', - name='in_charge', - field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.Person', verbose_name='Operation monitor'), - ), - migrations.AlterField( - model_name='historicaloperation', - name='scientist', - field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.Person', verbose_name='Scientific manager'), - ), - migrations.AlterField( - model_name='operation', - name='applicant_authority', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='operation_applicant_authority', to='ishtar_common.Organization', verbose_name='Applicant authority'), - ), - migrations.AlterField( - model_name='operation', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='operation', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='operation', - name='in_charge', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='operation_monitoring', to='ishtar_common.Person', verbose_name='Operation monitor'), - ), - migrations.AlterField( - model_name='operation', - name='minutes_writer', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='minutes_writer', to='ishtar_common.Person', verbose_name='Writer of the minutes'), - ), - migrations.AlterField( - model_name='operation', - name='operation_type', - field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to='ishtar_common.OperationType', verbose_name='Operation type'), - ), - migrations.AlterField( - model_name='operation', - name='protagonist', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='operation_protagonist', to='ishtar_common.Person', verbose_name='Name of the protagonist'), - ), - migrations.AlterField( - model_name='operation', - name='scientist', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='operation_scientist_responsability', to='ishtar_common.Person', verbose_name='Scientific manager'), - ), - migrations.AlterField( - model_name='operation', - name='spatial_reference_system', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System'), - ), - migrations.AlterField( - model_name='parcel', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='parcel', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='parcel', - name='town', - field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='parcels', to='ishtar_common.Town', verbose_name='Town'), - ), - migrations.AlterField( - model_name='parcelowner', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='parcelowner', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='parcelowner', - name='owner', - field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='parcel_owner', to='ishtar_common.Person', verbose_name='Owner'), - ), - migrations.AlterField( - model_name='recordrelations', - name='relation_type', - field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='archaeological_operations.RelationType'), - ), - migrations.AlterField( - model_name='relationtype', - name='inverse_relation', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='archaeological_operations.RelationType', verbose_name='Inverse relation'), - ), - ] diff --git a/archaeological_operations/migrations/0109_auto_20220317_1120.py b/archaeological_operations/migrations/0109_auto_20220317_1120.py new file mode 100644 index 000000000..477fa8ea2 --- /dev/null +++ b/archaeological_operations/migrations/0109_auto_20220317_1120.py @@ -0,0 +1,201 @@ +# Generated by Django 2.2.24 on 2022-03-17 11:20 + +import django.contrib.postgres.fields.jsonb +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('ishtar_common', '0220_auto_20220317_1120'), + ('archaeological_operations', '0108_auto_20220214_1920'), + ] + + operations = [ + migrations.AddField( + model_name='archaeologicalsite', + name='geodata', + field=models.ManyToManyField(blank=True, related_name='related_items_archaeological_operations_archaeologicalsite', to='ishtar_common.GeoVectorData'), + ), + migrations.AddField( + model_name='archaeologicalsite', + name='main_geodata', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_related_items_archaeological_operations_archaeologicalsite', to='ishtar_common.GeoVectorData'), + ), + migrations.AddField( + model_name='historicalarchaeologicalsite', + name='main_geodata', + field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.GeoVectorData'), + ), + migrations.AddField( + model_name='historicaloperation', + name='main_geodata', + field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.GeoVectorData'), + ), + migrations.AddField( + model_name='operation', + name='geodata', + field=models.ManyToManyField(blank=True, related_name='related_items_archaeological_operations_operation', to='ishtar_common.GeoVectorData'), + ), + migrations.AddField( + model_name='operation', + name='main_geodata', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_related_items_archaeological_operations_operation', to='ishtar_common.GeoVectorData'), + ), + migrations.AlterField( + model_name='administrativeact', + name='act_type', + field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='archaeological_operations.ActType', verbose_name='Act type'), + ), + migrations.AlterField( + model_name='administrativeact', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='administrativeact', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='archaeologicalsite', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='archaeologicalsite', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='archaeologicalsite', + name='spatial_reference_system', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System'), + ), + migrations.AlterField( + model_name='historicaladministrativeact', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicaladministrativeact', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicalarchaeologicalsite', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicalarchaeologicalsite', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicaloperation', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicaloperation', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicaloperation', + name='in_charge', + field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.Person', verbose_name='Operation monitor'), + ), + migrations.AlterField( + model_name='historicaloperation', + name='scientist', + field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.Person', verbose_name='Scientific manager'), + ), + migrations.AlterField( + model_name='operation', + name='applicant_authority', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='operation_applicant_authority', to='ishtar_common.Organization', verbose_name='Applicant authority'), + ), + migrations.AlterField( + model_name='operation', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='operation', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='operation', + name='in_charge', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='operation_monitoring', to='ishtar_common.Person', verbose_name='Operation monitor'), + ), + migrations.AlterField( + model_name='operation', + name='minutes_writer', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='minutes_writer', to='ishtar_common.Person', verbose_name='Writer of the minutes'), + ), + migrations.AlterField( + model_name='operation', + name='operation_type', + field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to='ishtar_common.OperationType', verbose_name='Operation type'), + ), + migrations.AlterField( + model_name='operation', + name='protagonist', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='operation_protagonist', to='ishtar_common.Person', verbose_name='Name of the protagonist'), + ), + migrations.AlterField( + model_name='operation', + name='scientist', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='operation_scientist_responsability', to='ishtar_common.Person', verbose_name='Scientific manager'), + ), + migrations.AlterField( + model_name='operation', + name='spatial_reference_system', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System'), + ), + migrations.AlterField( + model_name='parcel', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='parcel', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='parcel', + name='town', + field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='parcels', to='ishtar_common.Town', verbose_name='Town'), + ), + migrations.AlterField( + model_name='parcelowner', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='parcelowner', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='parcelowner', + name='owner', + field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='parcel_owner', to='ishtar_common.Person', verbose_name='Owner'), + ), + migrations.AlterField( + model_name='recordrelations', + name='relation_type', + field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='archaeological_operations.RelationType'), + ), + migrations.AlterField( + model_name='relationtype', + name='inverse_relation', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='archaeological_operations.RelationType', verbose_name='Inverse relation'), + ), + ] diff --git a/archaeological_warehouse/migrations/0113_auto_20220222_1535.py b/archaeological_warehouse/migrations/0113_auto_20220222_1535.py deleted file mode 100644 index 16b1265d3..000000000 --- a/archaeological_warehouse/migrations/0113_auto_20220222_1535.py +++ /dev/null @@ -1,171 +0,0 @@ -# Generated by Django 2.2.24 on 2022-02-22 15:35 - -import django.contrib.postgres.fields.jsonb -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('ishtar_common', '0220_auto_20220222_1534'), - ('archaeological_warehouse', '0112_auto_20210308_1628'), - ] - - operations = [ - migrations.AddField( - model_name='container', - name='geodata', - field=models.ManyToManyField(blank=True, related_name='related_items_archaeological_warehouse_container', to='ishtar_common.GeoVectorData'), - ), - migrations.AddField( - model_name='container', - name='main_geodata', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_related_items_archaeological_warehouse_container', to='ishtar_common.GeoVectorData'), - ), - migrations.AddField( - model_name='historicalwarehouse', - name='main_geodata', - field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.GeoVectorData'), - ), - migrations.AddField( - model_name='warehouse', - name='geodata', - field=models.ManyToManyField(blank=True, related_name='related_items_archaeological_warehouse_warehouse', to='ishtar_common.GeoVectorData'), - ), - migrations.AddField( - model_name='warehouse', - name='main_geodata', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_related_items_archaeological_warehouse_warehouse', to='ishtar_common.GeoVectorData'), - ), - migrations.AlterField( - model_name='container', - name='cached_weight', - field=models.FloatField(blank=True, help_text='Entered weight if available otherwise calculated weight.', null=True, verbose_name='Cached weight (g)'), - ), - migrations.AlterField( - model_name='container', - name='container_type', - field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='containers', to='archaeological_warehouse.ContainerType', verbose_name='Container type'), - ), - migrations.AlterField( - model_name='container', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='container', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='container', - name='responsibility', - field=models.ForeignKey(blank=True, help_text='Warehouse that owns the container', null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='responsibilities', to='archaeological_warehouse.Warehouse', verbose_name='Responsibility'), - ), - migrations.AlterField( - model_name='container', - name='responsible', - field=models.ForeignKey(blank=True, help_text='Deprecated - do not use', null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='owned_containers', to='archaeological_warehouse.Warehouse', verbose_name='Responsible warehouse'), - ), - migrations.AlterField( - model_name='container', - name='spatial_reference_system', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System'), - ), - migrations.AlterField( - model_name='container', - name='weight', - field=models.FloatField(blank=True, null=True, verbose_name='Measured weight (g)'), - ), - migrations.AlterField( - model_name='containertype', - name='stationary', - field=models.BooleanField(default=False, help_text='Container that will not usually be moved. Ex: building, room, span, shelf. Stationary containers are not automatically numbered.', verbose_name='Stationary'), - ), - migrations.AlterField( - model_name='historicalwarehouse', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicalwarehouse', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicalwarehouse', - name='mobile_phone', - field=models.CharField(blank=True, max_length=32, null=True, verbose_name='Mobile phone'), - ), - migrations.AlterField( - model_name='historicalwarehouse', - name='phone', - field=models.CharField(blank=True, max_length=32, null=True, verbose_name='Phone'), - ), - migrations.AlterField( - model_name='historicalwarehouse', - name='phone2', - field=models.CharField(blank=True, max_length=32, null=True, verbose_name='Phone description 2'), - ), - migrations.AlterField( - model_name='historicalwarehouse', - name='phone3', - field=models.CharField(blank=True, max_length=32, null=True, verbose_name='Phone 3'), - ), - migrations.AlterField( - model_name='warehouse', - name='data', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='warehouse', - name='history_m2m', - field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='warehouse', - name='mobile_phone', - field=models.CharField(blank=True, max_length=32, null=True, verbose_name='Mobile phone'), - ), - migrations.AlterField( - model_name='warehouse', - name='phone', - field=models.CharField(blank=True, max_length=32, null=True, verbose_name='Phone'), - ), - migrations.AlterField( - model_name='warehouse', - name='phone2', - field=models.CharField(blank=True, max_length=32, null=True, verbose_name='Phone description 2'), - ), - migrations.AlterField( - model_name='warehouse', - name='phone3', - field=models.CharField(blank=True, max_length=32, null=True, verbose_name='Phone 3'), - ), - migrations.AlterField( - model_name='warehouse', - name='precise_town', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='ishtar_common.Town', verbose_name='Town (precise)'), - ), - migrations.AlterField( - model_name='warehouse', - name='spatial_reference_system', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System'), - ), - migrations.AlterField( - model_name='warehouse', - name='warehouse_type', - field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='archaeological_warehouse.WarehouseType', verbose_name='Warehouse type'), - ), - migrations.AlterField( - model_name='warehousedivisionlink', - name='container_type', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='archaeological_warehouse.ContainerType'), - ), - migrations.AlterField( - model_name='warehousedivisionlink', - name='division', - field=models.ForeignKey(blank=True, help_text='Deprecated - do not use', null=True, on_delete=django.db.models.deletion.SET_NULL, to='archaeological_warehouse.WarehouseDivision'), - ), - ] diff --git a/archaeological_warehouse/migrations/0113_auto_20220317_1120.py b/archaeological_warehouse/migrations/0113_auto_20220317_1120.py new file mode 100644 index 000000000..8011bc073 --- /dev/null +++ b/archaeological_warehouse/migrations/0113_auto_20220317_1120.py @@ -0,0 +1,171 @@ +# Generated by Django 2.2.24 on 2022-03-17 11:20 + +import django.contrib.postgres.fields.jsonb +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('ishtar_common', '0220_auto_20220317_1120'), + ('archaeological_warehouse', '0112_auto_20210308_1628'), + ] + + operations = [ + migrations.AddField( + model_name='container', + name='geodata', + field=models.ManyToManyField(blank=True, related_name='related_items_archaeological_warehouse_container', to='ishtar_common.GeoVectorData'), + ), + migrations.AddField( + model_name='container', + name='main_geodata', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_related_items_archaeological_warehouse_container', to='ishtar_common.GeoVectorData'), + ), + migrations.AddField( + model_name='historicalwarehouse', + name='main_geodata', + field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.GeoVectorData'), + ), + migrations.AddField( + model_name='warehouse', + name='geodata', + field=models.ManyToManyField(blank=True, related_name='related_items_archaeological_warehouse_warehouse', to='ishtar_common.GeoVectorData'), + ), + migrations.AddField( + model_name='warehouse', + name='main_geodata', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_related_items_archaeological_warehouse_warehouse', to='ishtar_common.GeoVectorData'), + ), + migrations.AlterField( + model_name='container', + name='cached_weight', + field=models.FloatField(blank=True, help_text='Entered weight if available otherwise calculated weight.', null=True, verbose_name='Cached weight (g)'), + ), + migrations.AlterField( + model_name='container', + name='container_type', + field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='containers', to='archaeological_warehouse.ContainerType', verbose_name='Container type'), + ), + migrations.AlterField( + model_name='container', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='container', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='container', + name='responsibility', + field=models.ForeignKey(blank=True, help_text='Warehouse that owns the container', null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='responsibilities', to='archaeological_warehouse.Warehouse', verbose_name='Responsibility'), + ), + migrations.AlterField( + model_name='container', + name='responsible', + field=models.ForeignKey(blank=True, help_text='Deprecated - do not use', null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='owned_containers', to='archaeological_warehouse.Warehouse', verbose_name='Responsible warehouse'), + ), + migrations.AlterField( + model_name='container', + name='spatial_reference_system', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System'), + ), + migrations.AlterField( + model_name='container', + name='weight', + field=models.FloatField(blank=True, null=True, verbose_name='Measured weight (g)'), + ), + migrations.AlterField( + model_name='containertype', + name='stationary', + field=models.BooleanField(default=False, help_text='Container that will not usually be moved. Ex: building, room, span, shelf. Stationary containers are not automatically numbered.', verbose_name='Stationary'), + ), + migrations.AlterField( + model_name='historicalwarehouse', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicalwarehouse', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicalwarehouse', + name='mobile_phone', + field=models.CharField(blank=True, max_length=32, null=True, verbose_name='Mobile phone'), + ), + migrations.AlterField( + model_name='historicalwarehouse', + name='phone', + field=models.CharField(blank=True, max_length=32, null=True, verbose_name='Phone'), + ), + migrations.AlterField( + model_name='historicalwarehouse', + name='phone2', + field=models.CharField(blank=True, max_length=32, null=True, verbose_name='Phone description 2'), + ), + migrations.AlterField( + model_name='historicalwarehouse', + name='phone3', + field=models.CharField(blank=True, max_length=32, null=True, verbose_name='Phone 3'), + ), + migrations.AlterField( + model_name='warehouse', + name='data', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='warehouse', + name='history_m2m', + field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='warehouse', + name='mobile_phone', + field=models.CharField(blank=True, max_length=32, null=True, verbose_name='Mobile phone'), + ), + migrations.AlterField( + model_name='warehouse', + name='phone', + field=models.CharField(blank=True, max_length=32, null=True, verbose_name='Phone'), + ), + migrations.AlterField( + model_name='warehouse', + name='phone2', + field=models.CharField(blank=True, max_length=32, null=True, verbose_name='Phone description 2'), + ), + migrations.AlterField( + model_name='warehouse', + name='phone3', + field=models.CharField(blank=True, max_length=32, null=True, verbose_name='Phone 3'), + ), + migrations.AlterField( + model_name='warehouse', + name='precise_town', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='ishtar_common.Town', verbose_name='Town (precise)'), + ), + migrations.AlterField( + model_name='warehouse', + name='spatial_reference_system', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System'), + ), + migrations.AlterField( + model_name='warehouse', + name='warehouse_type', + field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='archaeological_warehouse.WarehouseType', verbose_name='Warehouse type'), + ), + migrations.AlterField( + model_name='warehousedivisionlink', + name='container_type', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='archaeological_warehouse.ContainerType'), + ), + migrations.AlterField( + model_name='warehousedivisionlink', + name='division', + field=models.ForeignKey(blank=True, help_text='Deprecated - do not use', null=True, on_delete=django.db.models.deletion.SET_NULL, to='archaeological_warehouse.WarehouseDivision'), + ), + ] diff --git a/ishtar_common/forms_common.py b/ishtar_common/forms_common.py index ed59b6c85..0490c1203 100644 --- a/ishtar_common/forms_common.py +++ b/ishtar_common/forms_common.py @@ -333,7 +333,6 @@ class NewImportGISForm(NewImportFormBase): "importer_type", "imported_file", "associated_group", - "skip_lines", ) HEADERS = { diff --git a/ishtar_common/migrations/0220_auto_20220222_1534.py b/ishtar_common/migrations/0220_auto_20220222_1534.py deleted file mode 100644 index b6f4db445..000000000 --- a/ishtar_common/migrations/0220_auto_20220222_1534.py +++ /dev/null @@ -1,133 +0,0 @@ -# Generated by Django 2.2.24 on 2022-02-22 15:34 - -import django.contrib.gis.db.models.fields -import django.core.validators -from django.db import migrations, models -import django.db.models.deletion -import ishtar_common.models_common -import re - - -class Migration(migrations.Migration): - - dependencies = [ - ('contenttypes', '0002_remove_content_type_name'), - ('ishtar_common', '0219_auto_20220120_1552'), - ] - - operations = [ - migrations.CreateModel( - name='GeoDataType', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('label', models.TextField(verbose_name='Label')), - ('txt_idx', models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')], verbose_name='Textual ID')), - ('comment', models.TextField(blank=True, default='', verbose_name='Comment')), - ('available', models.BooleanField(default=True, verbose_name='Available')), - ('order', models.IntegerField(default=10, verbose_name='Order')), - ('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='ishtar_common.GeoDataType', verbose_name='Parent')), - ], - options={ - 'verbose_name': 'Geographic - Data type', - 'verbose_name_plural': 'Geographic - Data types', - 'ordering': ('order', 'label'), - }, - bases=(ishtar_common.models_common.Cached, models.Model), - ), - migrations.CreateModel( - name='GeoOriginType', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('label', models.TextField(verbose_name='Label')), - ('txt_idx', models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')], verbose_name='Textual ID')), - ('comment', models.TextField(blank=True, default='', verbose_name='Comment')), - ('available', models.BooleanField(default=True, verbose_name='Available')), - ('order', models.IntegerField(default=10, verbose_name='Order')), - ('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='ishtar_common.GeoOriginType', verbose_name='Parent')), - ], - options={ - 'verbose_name': 'Geographic - Origin type', - 'verbose_name_plural': 'Geographic - Origin types', - 'ordering': ('order', 'label'), - }, - bases=(ishtar_common.models_common.Cached, models.Model), - ), - migrations.CreateModel( - name='GeoProviderType', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('label', models.TextField(verbose_name='Label')), - ('txt_idx', models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')], verbose_name='Textual ID')), - ('comment', models.TextField(blank=True, default='', verbose_name='Comment')), - ('available', models.BooleanField(default=True, verbose_name='Available')), - ('order', models.IntegerField(default=10, verbose_name='Order')), - ('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='ishtar_common.GeoProviderType', verbose_name='Parent')), - ], - options={ - 'verbose_name': 'Geographic - Provider type', - 'verbose_name_plural': 'Geographic - Provider types', - 'ordering': ('order', 'label'), - }, - bases=(ishtar_common.models_common.Cached, models.Model), - ), - migrations.AlterModelOptions( - name='area', - options={'ordering': ('label',), 'verbose_name': 'Town - Area', 'verbose_name_plural': 'Town - Areas'}, - ), - migrations.AlterModelOptions( - name='person', - options={'ordering': ['name', 'surname'], 'permissions': (('view_own_person', 'Can view own Person'), ('add_own_person', 'Can add own Person'), ('change_own_person', 'Can change own Person'), ('delete_own_person', 'Can delete own Person')), 'verbose_name': 'Person', 'verbose_name_plural': 'Persons'}, - ), - migrations.AlterModelOptions( - name='spatialreferencesystem', - options={'ordering': ('order', 'label'), 'verbose_name': 'Spatial reference system', 'verbose_name_plural': 'Spatial reference systems'}, - ), - migrations.AlterField( - model_name='area', - name='reference', - field=models.TextField(blank=True, default='', verbose_name='Reference'), - ), - migrations.CreateModel( - name='GeoVectorData', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.TextField(default='Default', verbose_name='Name')), - ('source_id', models.PositiveIntegerField()), - ('comment', models.TextField(blank=True, default='', verbose_name='Comment')), - ('x', models.FloatField(blank=True, help_text='User input', null=True, verbose_name='X')), - ('y', models.FloatField(blank=True, help_text='User input', null=True, verbose_name='Y')), - ('z', models.FloatField(blank=True, help_text='User input', null=True, verbose_name='Z')), - ('cached_x', models.FloatField(blank=True, null=True, verbose_name='X (cached)')), - ('cached_y', models.FloatField(blank=True, null=True, verbose_name='Y (cached)')), - ('cached_z', models.FloatField(blank=True, null=True, verbose_name='Z (cached)')), - ('estimated_error_x', models.FloatField(blank=True, null=True, verbose_name='Estimated error for X')), - ('estimated_error_y', models.FloatField(blank=True, null=True, verbose_name='Estimated error for Y')), - ('estimated_error_z', models.FloatField(blank=True, null=True, verbose_name='Estimated error for Z')), - ('point_2d', django.contrib.gis.db.models.fields.PointField(blank=True, null=True, srid=4326, verbose_name='Point (2D)')), - ('point_3d', django.contrib.gis.db.models.fields.PointField(blank=True, dim=3, null=True, srid=4326, verbose_name='Point (3D)')), - ('multi_points', django.contrib.gis.db.models.fields.MultiPointField(blank=True, null=True, srid=4326, verbose_name='Multi points')), - ('multi_line', django.contrib.gis.db.models.fields.MultiLineStringField(blank=True, null=True, srid=4326, verbose_name='Multi line')), - ('multi_polygon', django.contrib.gis.db.models.fields.MultiPolygonField(blank=True, null=True, srid=4326, verbose_name='Multi polygon')), - ('need_update', models.BooleanField(default=False, verbose_name='Need update')), - ('data_type', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.GeoDataType', verbose_name='Data type')), - ('origin', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.GeoOriginType', verbose_name='Origin')), - ('provider', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.GeoProviderType', verbose_name='Provider')), - ('source_content_type', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='content_type_geovectordata', to='contenttypes.ContentType')), - ('spatial_reference_system', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System')), - ], - options={ - 'verbose_name': 'Geographic - Vector data', - 'verbose_name_plural': 'Geographic - Vector data', - }, - ), - migrations.AddField( - model_name='town', - name='geodata', - field=models.ManyToManyField(blank=True, related_name='related_items_ishtar_common_town', to='ishtar_common.GeoVectorData'), - ), - migrations.AddField( - model_name='town', - name='main_geodata', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_related_items_ishtar_common_town', to='ishtar_common.GeoVectorData'), - ), - ] diff --git a/ishtar_common/migrations/0220_auto_20220317_1120.py b/ishtar_common/migrations/0220_auto_20220317_1120.py new file mode 100644 index 000000000..5103b6178 --- /dev/null +++ b/ishtar_common/migrations/0220_auto_20220317_1120.py @@ -0,0 +1,148 @@ +# Generated by Django 2.2.24 on 2022-03-17 11:20 + +import django.contrib.gis.db.models.fields +import django.core.validators +from django.db import migrations, models +import django.db.models.deletion +import ishtar_common.models_common +import re + + +class Migration(migrations.Migration): + + dependencies = [ + ('contenttypes', '0002_remove_content_type_name'), + ('ishtar_common', '0219_auto_20220120_1552'), + ] + + operations = [ + migrations.CreateModel( + name='GeoDataType', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('label', models.TextField(verbose_name='Label')), + ('txt_idx', models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')], verbose_name='Textual ID')), + ('comment', models.TextField(blank=True, default='', verbose_name='Comment')), + ('available', models.BooleanField(default=True, verbose_name='Available')), + ('order', models.IntegerField(default=10, verbose_name='Order')), + ('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='ishtar_common.GeoDataType', verbose_name='Parent')), + ], + options={ + 'verbose_name': 'Geographic - Data type', + 'verbose_name_plural': 'Geographic - Data types', + 'ordering': ('order', 'label'), + }, + bases=(ishtar_common.models_common.Cached, models.Model), + ), + migrations.CreateModel( + name='GeoOriginType', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('label', models.TextField(verbose_name='Label')), + ('txt_idx', models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')], verbose_name='Textual ID')), + ('comment', models.TextField(blank=True, default='', verbose_name='Comment')), + ('available', models.BooleanField(default=True, verbose_name='Available')), + ('order', models.IntegerField(default=10, verbose_name='Order')), + ('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='ishtar_common.GeoOriginType', verbose_name='Parent')), + ], + options={ + 'verbose_name': 'Geographic - Origin type', + 'verbose_name_plural': 'Geographic - Origin types', + 'ordering': ('order', 'label'), + }, + bases=(ishtar_common.models_common.Cached, models.Model), + ), + migrations.CreateModel( + name='GeoProviderType', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('label', models.TextField(verbose_name='Label')), + ('txt_idx', models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')], verbose_name='Textual ID')), + ('comment', models.TextField(blank=True, default='', verbose_name='Comment')), + ('available', models.BooleanField(default=True, verbose_name='Available')), + ('order', models.IntegerField(default=10, verbose_name='Order')), + ('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='ishtar_common.GeoProviderType', verbose_name='Parent')), + ], + options={ + 'verbose_name': 'Geographic - Provider type', + 'verbose_name_plural': 'Geographic - Provider types', + 'ordering': ('order', 'label'), + }, + bases=(ishtar_common.models_common.Cached, models.Model), + ), + migrations.AlterModelOptions( + name='area', + options={'ordering': ('label',), 'verbose_name': 'Town - Area', 'verbose_name_plural': 'Town - Areas'}, + ), + migrations.AlterModelOptions( + name='person', + options={'ordering': ['name', 'surname'], 'permissions': (('view_own_person', 'Can view own Person'), ('add_own_person', 'Can add own Person'), ('change_own_person', 'Can change own Person'), ('delete_own_person', 'Can delete own Person')), 'verbose_name': 'Person', 'verbose_name_plural': 'Persons'}, + ), + migrations.AlterModelOptions( + name='spatialreferencesystem', + options={'ordering': ('order', 'label'), 'verbose_name': 'Spatial reference system', 'verbose_name_plural': 'Spatial reference systems'}, + ), + migrations.AddField( + model_name='importertype', + name='is_main_geometry', + field=models.BooleanField(default=True, help_text='Only relevant for GIS files', verbose_name='Set to main geometry'), + ), + migrations.AddField( + model_name='importertype', + name='layer_name', + field=models.CharField(blank=True, help_text='For GIS file with multiple layers', max_length=200, null=True, verbose_name='Layer name'), + ), + migrations.AddField( + model_name='importertype', + name='type', + field=models.CharField(choices=[('tab', 'Table'), ('gis', 'GIS')], default='tab', max_length=3, verbose_name='Type'), + ), + migrations.AlterField( + model_name='area', + name='reference', + field=models.TextField(blank=True, default='', verbose_name='Reference'), + ), + migrations.CreateModel( + name='GeoVectorData', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.TextField(default='Default', verbose_name='Name')), + ('source_id', models.PositiveIntegerField()), + ('comment', models.TextField(blank=True, default='', verbose_name='Comment')), + ('x', models.FloatField(blank=True, help_text='User input', null=True, verbose_name='X')), + ('y', models.FloatField(blank=True, help_text='User input', null=True, verbose_name='Y')), + ('z', models.FloatField(blank=True, help_text='User input', null=True, verbose_name='Z')), + ('cached_x', models.FloatField(blank=True, null=True, verbose_name='X (cached)')), + ('cached_y', models.FloatField(blank=True, null=True, verbose_name='Y (cached)')), + ('cached_z', models.FloatField(blank=True, null=True, verbose_name='Z (cached)')), + ('estimated_error_x', models.FloatField(blank=True, null=True, verbose_name='Estimated error for X')), + ('estimated_error_y', models.FloatField(blank=True, null=True, verbose_name='Estimated error for Y')), + ('estimated_error_z', models.FloatField(blank=True, null=True, verbose_name='Estimated error for Z')), + ('point_2d', django.contrib.gis.db.models.fields.PointField(blank=True, null=True, srid=4326, verbose_name='Point (2D)')), + ('point_3d', django.contrib.gis.db.models.fields.PointField(blank=True, dim=3, null=True, srid=4326, verbose_name='Point (3D)')), + ('multi_points', django.contrib.gis.db.models.fields.MultiPointField(blank=True, null=True, srid=4326, verbose_name='Multi points')), + ('multi_line', django.contrib.gis.db.models.fields.MultiLineStringField(blank=True, null=True, srid=4326, verbose_name='Multi line')), + ('multi_polygon', django.contrib.gis.db.models.fields.MultiPolygonField(blank=True, null=True, srid=4326, verbose_name='Multi polygon')), + ('need_update', models.BooleanField(default=False, verbose_name='Need update')), + ('data_type', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.GeoDataType', verbose_name='Data type')), + ('origin', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.GeoOriginType', verbose_name='Origin')), + ('provider', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.GeoProviderType', verbose_name='Provider')), + ('source_content_type', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='content_type_geovectordata', to='contenttypes.ContentType')), + ('spatial_reference_system', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System')), + ], + options={ + 'verbose_name': 'Geographic - Vector data', + 'verbose_name_plural': 'Geographic - Vector data', + }, + ), + migrations.AddField( + model_name='town', + name='geodata', + field=models.ManyToManyField(blank=True, related_name='related_items_ishtar_common_town', to='ishtar_common.GeoVectorData'), + ), + migrations.AddField( + model_name='town', + name='main_geodata', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_related_items_ishtar_common_town', to='ishtar_common.GeoVectorData'), + ), + ] diff --git a/ishtar_common/migrations/0221_importertype_type.py b/ishtar_common/migrations/0221_importertype_type.py deleted file mode 100644 index 7c15f31b6..000000000 --- a/ishtar_common/migrations/0221_importertype_type.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 2.2.24 on 2022-03-16 17:57 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('ishtar_common', '0220_auto_20220222_1534'), - ] - - operations = [ - migrations.AddField( - model_name='importertype', - name='type', - field=models.CharField(choices=[('tab', 'Table'), ('gis', 'GIS')], default='tab', max_length=3, verbose_name='Type'), - ), - ] diff --git a/ishtar_common/models_imports.py b/ishtar_common/models_imports.py index 85b3473f9..b931cc4b4 100644 --- a/ishtar_common/models_imports.py +++ b/ishtar_common/models_imports.py @@ -120,7 +120,7 @@ class ImporterTypeManager(models.Manager): IMPORT_TYPES = ( - ("tab", "Table"), + ("tab", _("Table")), ("gis", _("GIS")), ) @@ -135,8 +135,21 @@ class ImporterType(models.Model): description = models.CharField( _("Description"), blank=True, null=True, max_length=500 ) - type = models.CharField(_("Type"), max_length=3, choices=IMPORT_TYPES, - default='tab') + type = models.CharField( + _("Type"), max_length=3, choices=IMPORT_TYPES, default="tab" + ) + layer_name = models.CharField( + _("Layer name"), + max_length=200, + blank=True, + null=True, + help_text=_("For GIS file with multiple layers"), + ) + is_main_geometry = models.BooleanField( + _("Set to main geometry"), + default=True, + help_text=_("Only relevant for GIS files"), + ) users = models.ManyToManyField("IshtarUser", verbose_name=_("Users"), blank=True) associated_models = models.ForeignKey( ImporterModel, @@ -464,7 +477,8 @@ class ImporterDefaultValues(models.Model): return field = fields[target] if not hasattr(field, "remote_field") or not hasattr( - field.remote_field, "model"): + field.remote_field, "model" + ): return self.value model = field.remote_field.model # if value is an id @@ -546,7 +560,7 @@ class ImporterColumn(models.Model): return ", ".join([dp.field_name or "" for dp in self.duplicate_fields.all()]) def formater_type_lbl(self): - return ', '.join([str(target.formater_type) for target in self.targets.all()]) + return ", ".join([str(target.formater_type) for target in self.targets.all()]) class ImporterDuplicateFieldManager(models.Manager): diff --git a/requirements.txt b/requirements.txt index 0d18b197f..f43f1790a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,6 +3,8 @@ # gdal==2.4.0 # 3.2 +fiona==1.8.18 + psycopg2-binary==2.8.6 # old 2.7.7 -- cgit v1.2.3