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): | 
