diff options
Diffstat (limited to 'archaeological_operations/models.py')
-rw-r--r-- | archaeological_operations/models.py | 35 |
1 files changed, 5 insertions, 30 deletions
diff --git a/archaeological_operations/models.py b/archaeological_operations/models.py index ca649d2d0..fdcb05f80 100644 --- a/archaeological_operations/models.py +++ b/archaeological_operations/models.py @@ -33,7 +33,7 @@ from ishtar_common.utils import cached_label_changed from ishtar_common.models import GeneralType, BaseHistorizedItem, \ HistoricalRecords, LightHistorizedItem, OwnPerms, Department, Source,\ Person, Organization, Town, Dashboard, IshtarUser, ValueGetter, \ - DocumentTemplate, ShortMenuItem + DocumentTemplate, ShortMenuItem, DashboardFormItem FILES_AVAILABLE = 'archaeological_files' in settings.INSTALLED_APPS class OperationType(GeneralType): @@ -132,7 +132,8 @@ class ArchaeologicalSite(BaseHistorizedItem): name += u" %s %s" % (settings.JOINT, self.name) return name -class Operation(BaseHistorizedItem, OwnPerms, ValueGetter, ShortMenuItem): +class Operation(BaseHistorizedItem, OwnPerms, ValueGetter, ShortMenuItem, + DashboardFormItem): TABLE_COLS = ['year_index', 'operation_type', 'remains', 'towns', 'start_date', 'excavation_end_date'] if FILES_AVAILABLE: @@ -140,6 +141,8 @@ class Operation(BaseHistorizedItem, OwnPerms, ValueGetter, ShortMenuItem): 'associated_file_short_label', 'start_date', 'excavation_end_date'] start_date = models.DateField(_(u"Start date"), null=True, blank=True) + creation_date = models.DateField(_(u"Creation date"), + default=datetime.date.today) excavation_end_date = models.DateField(_(u"Excavation end date"), null=True, blank=True) end_date = models.DateField(_(u"Closing date"), null=True, blank=True) @@ -337,34 +340,6 @@ class Operation(BaseHistorizedItem, OwnPerms, ValueGetter, ShortMenuItem): Max('operation_code'))["operation_code__max"] return (max_val + 1) if max_val else 1 - @classmethod - def get_periods(cls, slice='year', fltr={}): - q = cls.objects - if fltr: - q = q.filter(**fltr) - if slice == 'year': - max_year = datetime.date.today().year + 1 - return [res['year'] for res in list( - q.exclude( year__isnull=True - ).exclude(year__gt=max_year - ).values('year' - ).annotate(Count("id")).order_by())] - return [] - - @classmethod - def get_by_year(cls, year, fltr={}): - q = cls.objects - if fltr: - q = q.filter(**fltr) - return q.filter(year=year) - - @classmethod - def get_total_number(cls, fltr={}): - q = cls.objects - if fltr: - q = q.filter(**fltr) - return q.count() - year_index_lbl = _(u"Operation code") @property def year_index(self): |