From 8b6c3f0030da1f0523f6b620c3ea5b48c9be06cf Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 23 Dec 2010 18:46:10 +0100 Subject: Add a "light" historization (refs #25) --- .gitignore | 1 + ishtar/furnitures/models.py | 16 +++++++++++----- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index deb410cdc..bf2bcff0d 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ django-simple-history/* communesdefrancedetaillees.csv projet_données_d_échange_2010.zip +ishtar-docs diff --git a/ishtar/furnitures/models.py b/ishtar/furnitures/models.py index 9d85f0ae1..87b976f1c 100644 --- a/ishtar/furnitures/models.py +++ b/ishtar/furnitures/models.py @@ -20,6 +20,7 @@ """ Models description """ +import datetime from django.utils.translation import ugettext_lazy as _ @@ -46,10 +47,15 @@ class GeneralType(models.Model): return self.label class HistorizedItem(models.Model): - last_modifier = models.ForeignKey("IshtarUser", related_name='+', + history_modifier = models.ForeignKey("IshtarUser", related_name='+', verbose_name=_(u"Last modifier")) history = HistoricalRecords() +class LightHistorizedItem(models.Model): + history_modifier = models.ForeignKey("IshtarUser", related_name='+', + verbose_name=_(u"Last modifier")) + history_date = models.DateTimeField(default=datetime.datetime.now) + class Departement(models.Model): label = models.CharField(_(u"Label"), max_length=30) number = models.IntegerField(_(u"Number")) @@ -197,7 +203,7 @@ class Operation(HistorizedItem): return self.name -class Parcel(models.Model) : +class Parcel(LightHistorizedItem) : operation = models.ForeignKey(Operation, related_name='+', verbose_name=_(u"Operation")) section = models.CharField(_(u"Section"), max_length=4) @@ -326,7 +332,7 @@ class Item(HistorizedItem): def __unicode__(self): return self.label -class ParcelOwner(models.Model): +class ParcelOwner(LightHistorizedItem): owner = models.ForeignKey(Person, verbose_name=_(u"Owner")) parcel = models.ForeignKey(Parcel, verbose_name=_(u"Parcel")) start_date = models.DateField(_(u"Start date")) @@ -392,7 +398,7 @@ class ContainerType(GeneralType): verbose_name = _(u"Container type") verbose_name_plural = _(u"Container types") -class Container(models.Model): +class Container(LightHistorizedItem): reference = models.CharField(_(u"Reference"), max_length=15) location = models.ForeignKey(Warehouse, verbose_name=_(u"Location")) container_type = models.ForeignKey(ContainerType, @@ -473,7 +479,7 @@ class Author(models.Model): def __unicode__(self): return self.person + u" - " + self.source -class Property(models.Model): +class Property(LightHistorizedItem): item = models.ForeignKey(Item, verbose_name=_(u"Item")) administrative_act = models.ForeignKey(AdministrativeAct, verbose_name=_(u"Administrative act")) -- cgit v1.2.3