summaryrefslogtreecommitdiff
path: root/archaeological_warehouse/models.py
diff options
context:
space:
mode:
Diffstat (limited to 'archaeological_warehouse/models.py')
-rw-r--r--archaeological_warehouse/models.py23
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