1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
|
# 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),
),
]
|