diff options
-rw-r--r-- | archaeological_finds/forms.py | 25 | ||||
-rw-r--r-- | archaeological_finds/migrations/0105_auto_20200407_1414.py | 26 | ||||
-rw-r--r-- | archaeological_finds/models_finds.py | 2 | ||||
-rw-r--r-- | archaeological_finds/templates/ishtar/sheet_find.html | 5 | ||||
-rw-r--r-- | archaeological_warehouse/migrations/0106_auto_20200407_1414.py | 38 | ||||
-rw-r--r-- | archaeological_warehouse/models.py | 19 | ||||
-rw-r--r-- | ishtar_common/migrations/0203_auto_20200407_1142.py | 2 |
7 files changed, 92 insertions, 25 deletions
diff --git a/archaeological_finds/forms.py b/archaeological_finds/forms.py index 97ae90bf4..e018c099b 100644 --- a/archaeological_finds/forms.py +++ b/archaeological_finds/forms.py @@ -137,7 +137,7 @@ class BasicFindForm(CustomForm, ManageOldType): """ file_upload = True form_label = _("Find") - form_admin_name = _(u"Simple find - 020 - General") + form_admin_name = _("Simple find - 020 - General") form_slug = "simplefind-020-general" base_models = ['object_type', 'material_type', 'communicabilitie', 'cultural_attribution'] @@ -149,6 +149,7 @@ class BasicFindForm(CustomForm, ManageOldType): 'material_type_quality': models.MaterialTypeQualityType, 'object_type_quality': models.ObjectTypeQualityType, 'checked_type': models.CheckedType, + 'collection': Warehouse, } field_order = [ 'label', 'denomination', 'previous_id', 'museum_id', 'laboratory_id', @@ -174,6 +175,12 @@ class BasicFindForm(CustomForm, ManageOldType): laboratory_id = forms.CharField(label=_(u"Laboratory ID"), required=False) seal_number = forms.CharField(label=_(u"Seal number"), required=False) mark = forms.CharField(label=_(u"Mark"), required=False) + collection = forms.IntegerField( + label=_("Collection (warehouse)"), + widget=widgets.JQueryAutoComplete( + reverse_lazy('autocomplete-warehouse'), + associated_model=Warehouse, new=True), + validators=[valid_id(Warehouse)], required=False) HEADERS['description'] = FormHeader(_(u"Description")) description = forms.CharField(label=_(u"Description"), @@ -288,7 +295,8 @@ class BasicFindForm(CustomForm, ManageOldType): class FindForm(BasicFindForm): file_upload = True form_label = _("Find") - form_admin_name = _(u"Find - 020 - General") + form_admin_name = _("Find - 020 - General") + extra_form_modals = ["warehouse"] form_slug = "find-020-general" base_models = ['get_first_base_find'] + BasicFindForm.base_models associated_models = BasicFindForm.associated_models.copy() @@ -299,8 +307,8 @@ class FindForm(BasicFindForm): field_order = [ 'label', 'denomination', 'previous_id', 'get_first_base_find__excavation_id', 'museum_id', 'laboratory_id', - 'seal_number', 'mark', 'description', 'public_description', - 'get_first_base_find__discovery_date', + 'seal_number', 'mark', 'collection', 'description', + 'public_description', 'get_first_base_find__discovery_date', 'get_first_base_find__discovery_date_taq', 'get_first_base_find__batch', 'is_complete', 'material_type', 'material_type_quality', 'material_comment', 'object_type', @@ -363,6 +371,9 @@ class FindForm(BasicFindForm): 'get_first_base_find__estimated_error_z', 'get_first_base_find__spatial_reference_system' ], + 'warehouse': [ + 'collection' + ] } def clean(self): @@ -1238,6 +1249,12 @@ class FindSelect(DocumentItemSelect, PeriodSelect): class FindSelectWarehouseModule(FindSelect): + collection = forms.IntegerField( + label=_("Collection (warehouse)"), + widget=widgets.JQueryAutoComplete( + reverse_lazy('autocomplete-warehouse'), + associated_model=Warehouse), + validators=[valid_id(Warehouse)]) container_ref__location = forms.IntegerField( label=_(u"Reference container - Warehouse (location)"), widget=widgets.JQueryAutoComplete( diff --git a/archaeological_finds/migrations/0105_auto_20200407_1414.py b/archaeological_finds/migrations/0105_auto_20200407_1414.py new file mode 100644 index 000000000..b4c05ee8a --- /dev/null +++ b/archaeological_finds/migrations/0105_auto_20200407_1414.py @@ -0,0 +1,26 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.27 on 2020-04-07 14:14 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('archaeological_finds', '0104_findinsidecontainer'), + ] + + operations = [ + migrations.AlterField( + model_name='find', + name='collection', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='finds', to='archaeological_warehouse.Warehouse', verbose_name='Collection'), + ), + migrations.AlterField( + model_name='historicalfind', + name='collection', + field=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='Collection'), + ), + ] diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py index 119a2022a..646ae8088 100644 --- a/archaeological_finds/models_finds.py +++ b/archaeological_finds/models_finds.py @@ -1593,7 +1593,7 @@ class Find(BulkUpdatedItem, ValueGetter, DocumentItem, BaseHistorizedItem, estimated_value = models.FloatField(_(u"Estimated value"), blank=True, null=True) collection = models.ForeignKey( - "archaeological_warehouse.Collection", verbose_name=_(u"Collection"), + "archaeological_warehouse.Warehouse", verbose_name=_("Collection"), blank=True, null=True, related_name='finds', on_delete=models.SET_NULL) # preservation module diff --git a/archaeological_finds/templates/ishtar/sheet_find.html b/archaeological_finds/templates/ishtar/sheet_find.html index 2b2e868be..50a21402b 100644 --- a/archaeological_finds/templates/ishtar/sheet_find.html +++ b/archaeological_finds/templates/ishtar/sheet_find.html @@ -253,6 +253,11 @@ {% if display_warehouse_treatments %} <div class="tab-pane fade" id="{{window_id}}-warehouse" role="tabpanel" aria-labelledby="{{window_id}}-warehouse-tab"> + {% if item.collection %} + <div class='row'> + {% field_flex_detail "Collection" item.collection "large" %} + </div> + {% endif %} {% if item.container %} <h3>{% trans "Warehouse - container" %}</h3> <div class='row'> diff --git a/archaeological_warehouse/migrations/0106_auto_20200407_1414.py b/archaeological_warehouse/migrations/0106_auto_20200407_1414.py new file mode 100644 index 000000000..9ec357d8a --- /dev/null +++ b/archaeological_warehouse/migrations/0106_auto_20200407_1414.py @@ -0,0 +1,38 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.27 on 2020-04-07 14:14 +from __future__ import unicode_literals + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('archaeological_warehouse', '0105_auto_20200407_1021'), + ] + + operations = [ + migrations.RemoveField( + model_name='collection', + name='history_creator', + ), + migrations.RemoveField( + model_name='collection', + name='history_modifier', + ), + migrations.RemoveField( + model_name='collection', + name='imports', + ), + migrations.RemoveField( + model_name='collection', + name='lock_user', + ), + migrations.RemoveField( + model_name='collection', + name='warehouse', + ), + migrations.DeleteModel( + name='Collection', + ), + ] diff --git a/archaeological_warehouse/models.py b/archaeological_warehouse/models.py index c9e0ad4aa..e62575ccf 100644 --- a/archaeological_warehouse/models.py +++ b/archaeological_warehouse/models.py @@ -358,25 +358,6 @@ m2m_changed.connect(document_attached_changed, post_save.connect(cached_label_and_geo_changed, sender=Warehouse) -class Collection(LightHistorizedItem): - name = models.CharField(_(u"Name"), max_length=200, - null=True, blank=True) - description = models.TextField(_(u"Description"), null=True, blank=True) - warehouse = models.ForeignKey(Warehouse, verbose_name=_(u"Warehouse"), - related_name='collections') - - class Meta: - verbose_name = _(u"Collection") - verbose_name_plural = _(u"Collection") - ordering = ('name',) - indexes = [ - GinIndex(fields=['data']), - ] - - def __str__(self): - return self.name - - class WarehouseDivision(GeneralType): class Meta: verbose_name = _(u"Warehouse division type") diff --git a/ishtar_common/migrations/0203_auto_20200407_1142.py b/ishtar_common/migrations/0203_auto_20200407_1142.py index db6cbc50c..739388097 100644 --- a/ishtar_common/migrations/0203_auto_20200407_1142.py +++ b/ishtar_common/migrations/0203_auto_20200407_1142.py @@ -15,6 +15,6 @@ class Migration(migrations.Migration): migrations.AlterField( model_name='ishtarsiteprofile', name='container_external_id', - field=models.TextField(default='{location__external_id}-{container_type__txt_idx}-{parent_id}-{reference}', help_text='Formula to manage container external ID. Change this with care. With incorrect formula, the application might be unusable and import of external data can be destructive.', verbose_name='Container external id'), + field=models.TextField(default='{parent_external_id}-{container_type__txt_idx}-{reference}', help_text='Formula to manage container external ID. Change this with care. With incorrect formula, the application might be unusable and import of external data can be destructive.', verbose_name='Container external id'), ), ] |