diff options
Diffstat (limited to 'archaeological_warehouse/models.py')
| -rw-r--r-- | archaeological_warehouse/models.py | 23 | 
1 files changed, 23 insertions, 0 deletions
| diff --git a/archaeological_warehouse/models.py b/archaeological_warehouse/models.py index 4b7201bcc..a8a38c34d 100644 --- a/archaeological_warehouse/models.py +++ b/archaeological_warehouse/models.py @@ -31,6 +31,7 @@ from django.db.models.signals import post_save, post_delete, m2m_changed  from django.template.defaultfilters import slugify  from ishtar_common.utils import ugettext_lazy as _, pgettext_lazy +from django.apps import apps  from ishtar_common.data_importer import post_importer_action  from ishtar_common.model_managers import ExternalIdManager, UUIDModelManager  from ishtar_common.models import Document, GeneralType, get_external_id, \ @@ -155,6 +156,28 @@ class Warehouse(Address, DocumentItem, GeoItem, QRCodeItem, DashboardFormItem,          return self.name      @property +    def number_divisions(self): +        return Container.objects.filter( +            location=self.pk, container_type__stationary=True).count() + +    @property +    def number_containers(self): +        return Container.objects.filter( +            location=self.pk, container_type__stationary=False).count() + +    @property +    def number_finds(self): +        Find = apps.get_model("archaeological_finds", "Find") +        return Find.objects.filter( +            container__location_id=self.pk).count() + +    @property +    def number_owned_finds(self): +        Find = apps.get_model("archaeological_finds", "Find") +        return Find.objects.filter( +            container_ref__location_id=self.pk).count() + +    @property      def short_label(self):          return self.name | 
