diff options
Diffstat (limited to 'archaeological_warehouse/migrations')
3 files changed, 138 insertions, 46 deletions
diff --git a/archaeological_warehouse/migrations/0116_auto_20230130_1605.py b/archaeological_warehouse/migrations/0116_auto_20230130_1605.py deleted file mode 100644 index bb25b02bd..000000000 --- a/archaeological_warehouse/migrations/0116_auto_20230130_1605.py +++ /dev/null @@ -1,44 +0,0 @@ -# Generated by Django 2.2.24 on 2023-01-30 16:05 - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('archaeological_warehouse', '0115_auto_20230120_1133'), - ] - - operations = [ - migrations.AddField( - model_name='container', - name='created', - field=models.DateTimeField(blank=True, default=datetime.datetime.now), - ), - migrations.AddField( - model_name='historicalwarehouse', - name='cached_label', - field=models.TextField(blank=True, db_index=True, default='', help_text='Generated automatically - do not edit', verbose_name='Cached name'), - ), - migrations.AddField( - model_name='historicalwarehouse', - name='created', - field=models.DateTimeField(blank=True, default=datetime.datetime.now), - ), - migrations.AddField( - model_name='warehouse', - name='cached_label', - field=models.TextField(blank=True, db_index=True, default='', help_text='Generated automatically - do not edit', verbose_name='Cached name'), - ), - migrations.AddField( - model_name='warehouse', - name='created', - field=models.DateTimeField(blank=True, default=datetime.datetime.now), - ), - migrations.AlterField( - model_name='container', - name='cached_label', - field=models.TextField(blank=True, db_index=True, default='', help_text='Generated automatically - do not edit', verbose_name='Cached name'), - ), - ] diff --git a/archaeological_warehouse/migrations/0116_auto_20230202_1633.py b/archaeological_warehouse/migrations/0116_auto_20230202_1633.py new file mode 100644 index 000000000..657f950c4 --- /dev/null +++ b/archaeological_warehouse/migrations/0116_auto_20230202_1633.py @@ -0,0 +1,125 @@ +# Generated by Django 2.2.24 on 2023-02-02 16:33 + +import datetime +from django.conf import settings +import django.contrib.gis.db.models.fields +import django.contrib.postgres.fields.jsonb +import django.contrib.postgres.search +from django.db import migrations, models +import django.db.models.deletion +import simple_history.models +import uuid + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('ishtar_common', '0225_migrate_created'), + ('archaeological_warehouse', '0115_auto_20230120_1133'), + ] + + operations = [ + migrations.RenameField( + model_name='container', + old_name='history_date', + new_name='history_date_deprecated', + ), + migrations.AddField( + model_name='container', + name='created', + field=models.DateTimeField(blank=True, default=datetime.datetime.now), + ), + migrations.AddField( + model_name='historicalwarehouse', + name='cached_label', + field=models.TextField(blank=True, db_index=True, default='', help_text='Generated automatically - do not edit', verbose_name='Cached name'), + ), + migrations.AddField( + model_name='historicalwarehouse', + name='created', + field=models.DateTimeField(blank=True, default=datetime.datetime.now), + ), + migrations.AddField( + model_name='warehouse', + name='cached_label', + field=models.TextField(blank=True, db_index=True, default='', help_text='Generated automatically - do not edit', verbose_name='Cached name'), + ), + migrations.AddField( + model_name='warehouse', + name='created', + field=models.DateTimeField(blank=True, default=datetime.datetime.now), + ), + migrations.AlterField( + model_name='container', + name='cached_label', + field=models.TextField(blank=True, db_index=True, default='', help_text='Generated automatically - do not edit', verbose_name='Cached name'), + ), + migrations.CreateModel( + name='HistoricalContainer', + fields=[ + ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), + ('search_vector', django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto filled at save', null=True, verbose_name='Search vector')), + ('data', django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict)), + ('last_modified', models.DateTimeField(blank=True, default=datetime.datetime.now)), + ('created', models.DateTimeField(blank=True, default=datetime.datetime.now)), + ('history_m2m', django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=dict)), + ('need_update', models.BooleanField(default=False, verbose_name='Need update')), + ('locked', models.BooleanField(default=False, verbose_name='Item locked for edition')), + ('merge_key', models.TextField(blank=True, null=True, verbose_name='Merge key')), + ('archived', models.NullBooleanField(default=False)), + ('x', models.FloatField(blank=True, null=True, verbose_name='X')), + ('y', models.FloatField(blank=True, null=True, verbose_name='Y')), + ('z', models.FloatField(blank=True, null=True, verbose_name='Z')), + ('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', django.contrib.gis.db.models.fields.PointField(blank=True, dim=3, null=True, srid=4326, verbose_name='Point')), + ('point_2d', django.contrib.gis.db.models.fields.PointField(blank=True, null=True, srid=4326, verbose_name='Point (2D)')), + ('point_source', models.CharField(blank=True, choices=[('T', 'Town'), ('P', 'Precise'), ('M', 'Polygon')], max_length=1, null=True, verbose_name='Point source')), + ('point_source_item', models.CharField(blank=True, max_length=100, null=True, verbose_name='Point source item')), + ('multi_polygon', django.contrib.gis.db.models.fields.MultiPolygonField(blank=True, null=True, srid=4326, verbose_name='Multi polygon')), + ('multi_polygon_source', models.CharField(blank=True, choices=[('T', 'Town'), ('P', 'Precise'), ('M', 'Polygon')], max_length=1, null=True, verbose_name='Multi-polygon source')), + ('multi_polygon_source_item', models.CharField(blank=True, max_length=100, null=True, verbose_name='Multi polygon source item')), + ('cached_label', models.TextField(blank=True, db_index=True, default='', help_text='Generated automatically - do not edit', verbose_name='Cached name')), + ('complete_identifier', models.TextField(blank=True, default='', verbose_name='Complete identifier')), + ('custom_index', models.IntegerField(blank=True, null=True, verbose_name='Custom index')), + ('qrcode', models.TextField(blank=True, max_length=255, null=True)), + ('uuid', models.UUIDField(default=uuid.uuid4)), + ('reference', models.TextField(verbose_name='Container ref.')), + ('comment', models.TextField(blank=True, default='', verbose_name='Comment')), + ('cached_location', models.TextField(blank=True, db_index=True, default='', verbose_name='Cached location')), + ('cached_division', models.TextField(blank=True, db_index=True, default='', verbose_name='Cached division')), + ('index', models.IntegerField(blank=True, db_index=True, null=True, verbose_name='Container ID')), + ('weight', models.FloatField(blank=True, null=True, verbose_name='Measured weight (g)')), + ('calculated_weight', models.FloatField(blank=True, null=True, verbose_name='Calculated weight (g)')), + ('cached_weight', models.FloatField(blank=True, help_text='Entered weight if available otherwise calculated weight.', null=True, verbose_name='Cached weight (g)')), + ('old_reference', models.TextField(blank=True, default='', verbose_name='Old reference')), + ('external_id', models.TextField(blank=True, default='', verbose_name='External ID')), + ('auto_external_id', models.BooleanField(default=False, verbose_name='External ID is set automatically')), + ('history_date_deprecated', models.DateTimeField(default=datetime.datetime.now)), + ('history_id', models.AutoField(primary_key=True, serialize=False)), + ('history_date', models.DateTimeField()), + ('history_change_reason', models.CharField(max_length=100, null=True)), + ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), + ('container_type', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='archaeological_warehouse.ContainerType', verbose_name='Container type')), + ('history_creator', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Creator')), + ('history_modifier', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Last editor')), + ('history_user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), + ('location', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='archaeological_warehouse.Warehouse', verbose_name='Location (warehouse)')), + ('lock_user', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Locked by')), + ('main_geodata', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.GeoVectorData', verbose_name='Main geodata')), + ('main_image', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.Document', verbose_name='Main image')), + ('parent', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='archaeological_warehouse.Container', verbose_name='Parent container')), + ('responsibility', models.ForeignKey(blank=True, db_constraint=False, help_text='Warehouse that owns the container', null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='archaeological_warehouse.Warehouse', verbose_name='Responsibility')), + ('responsible', models.ForeignKey(blank=True, db_constraint=False, help_text='Deprecated - do not use', null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='archaeological_warehouse.Warehouse', verbose_name='Responsible warehouse')), + ('spatial_reference_system', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System')), + ], + options={ + 'verbose_name': 'historical Container', + 'ordering': ('-history_date', '-history_id'), + 'get_latest_by': 'history_date', + }, + bases=(simple_history.models.HistoricalChanges, models.Model), + ), + ] diff --git a/archaeological_warehouse/migrations/0117_migrate_created.py b/archaeological_warehouse/migrations/0117_migrate_created.py index 0c9962a59..8bf125627 100644 --- a/archaeological_warehouse/migrations/0117_migrate_created.py +++ b/archaeological_warehouse/migrations/0117_migrate_created.py @@ -13,12 +13,23 @@ def migrate_created(apps, __): migrate_created_field(apps, app_name, model_names) +def migrate_history_date(apps, __): + app_name = "archaeological_warehouse" + model_name = "Container" + model = apps.get_model(app_name, model_name) + for item in model.objects.all(): + item.created = item.history_date_deprecated + item.skip_history_when_saving = True + item.save() + + class Migration(migrations.Migration): dependencies = [ - ('archaeological_warehouse', '0116_auto_20230130_1605'), + ('archaeological_warehouse', '0116_auto_20230202_1633'), ] operations = [ - migrations.RunPython(migrate_created) + migrations.RunPython(migrate_created), + migrations.RunPython(migrate_history_date) ] |