diff options
author | Étienne Loks <etienne.loks@peacefrogs.net> | 2010-12-22 11:53:11 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2010-12-24 17:39:03 +0100 |
commit | 24e16d6a59b24b1b3fec8f466983f45ab0723acd (patch) | |
tree | 097b1fd888451d100e226fabd331e903e90bba0e | |
parent | 7fd3c6819819c95ce0847807495e525f0970f374 (diff) | |
download | Ishtar-24e16d6a59b24b1b3fec8f466983f45ab0723acd.tar.bz2 Ishtar-24e16d6a59b24b1b3fec8f466983f45ab0723acd.zip |
Work on historization (refs #25)
-rw-r--r-- | ishtar/furnitures/models.py | 31 |
1 files changed, 13 insertions, 18 deletions
diff --git a/ishtar/furnitures/models.py b/ishtar/furnitures/models.py index 5d7743b3f..b02e35164 100644 --- a/ishtar/furnitures/models.py +++ b/ishtar/furnitures/models.py @@ -45,6 +45,10 @@ class GeneralType(models.Model): def __unicode__(self): return self.label +class HistorizedItem(models.Model): + last_modifier = models.ForeignKey("IshtarUser") + history = HistoricalRecords() + class Departement(models.Model): label = models.CharField(_(u"Label"), max_length=30) number = models.IntegerField(_(u"Number")) @@ -56,7 +60,7 @@ class Departement(models.Model): def __unicode__(self): return unicode(self.number) + u" - " + self.label -class Address(models.Model): +class Address(HistorizedItem): address = models.TextField(_(u"Address")) address_complement = models.TextField(_(u"Address complement")) postal_code = models.CharField(_(u"Postal code"), max_length=10) @@ -73,11 +77,10 @@ class OrganizationType(GeneralType): verbose_name = _(u"Organization type") verbose_name_plural = _(u"Organization types") -class Organization(models.Model): +class Organization(HistorizedItem): name = models.CharField(_(u"Name"), max_length=100) organization_type = models.ForeignKey(OrganizationType, verbose_name=_(u"Type")) - history = HistoricalRecords() class Meta: verbose_name = _(u"Organization") verbose_name_plural = _(u"Organizations") @@ -102,7 +105,6 @@ class Person(Address) : verbose_name=_(u"Is attached to")) is_author = models.BooleanField(_(u"Is an author?")) in_charge_storage = models.BooleanField(_(u"In charge of a storage?")) - history = HistoricalRecords() class Meta: verbose_name = _(u"Person") @@ -133,7 +135,7 @@ if settings.COUNTRY == 'fr': verbose_name = u"Saisine" verbose_name_plural = u"Saisines") -class File(models.Model) : +class File(HistorizedItem): year = models.IntegerField(_(u"Year")) number = models.IntegerField(_(u"Number")) is_active = models.BooleanField(_(u"Is active?")) @@ -151,7 +153,6 @@ class File(models.Model) : avec accusé réception") ar_signed_by = models.ForeignKey(Person, related_name='+', verbose_name=u"Signature de l'accusé de réception par") - history = HistoricalRecords() class Meta: verbose_name = _(u"Archaeological file") @@ -171,7 +172,7 @@ class VestigeType(GeneralType): verbose_name = _(u"Vestige type") verbose_name_plural = _(u"Vestige types") -class Operation(models.Model): +class Operation(HistorizedItem): name = models.CharField(_(u"Name"), max_length=120) start_date = models.DateField(_(u"Start date")) end_date = models.DateField(_(u"End date")) @@ -184,7 +185,6 @@ class Operation(models.Model): verbose_name=_(u"Operation type")) vestiges = models.ManyToManyField("Vestige") towns = models.ManyToManyField("Town") - history = HistoricalRecords() if settings.COUNTRY == 'fr': code_patriarche = models.IntegerField(u"Code PATRIARCHE") code_pat = models.CharField(u"Code PAT", max_length=10) @@ -246,7 +246,7 @@ class Dating(models.Model): verbose_name = _(u"Dating") verbose_name_plural = _(u"Datings") -class RegistrationUnit(models.Model): +class RegistrationUnit(HistorizedItem): parcel = models.ForeignKey(Parcel, verbose_name=_(u"Parcel")) #operation = models.ForeignKey(Operation, verbose_name=_(u"Operation")) ???? label = models.CharField(_(u"Label"), max_length=200) @@ -259,7 +259,6 @@ class RegistrationUnit(models.Model): interpretation = models.TextField(_(u"Interpretation")) filling = models.TextField(_(u"Filling")) datings = models.ManyToManyField(Dating) # dans Item ??? - history = HistoricalRecords() class Meta: verbose_name = _(u"Registration Unit") @@ -291,14 +290,13 @@ class MaterialType(GeneralType): verbose_name = _(u"Material type") verbose_name_plural = _(u"Material types") -class BaseItem(models.Model): +class BaseItem(HistorizedItem): label = models.CharField(_(u"Label"), max_length=60) description = models.TextField(_(u"Description")) registration_unit = models.ForeignKey(RegistrationUnit, verbose_name=_(u"Registration Unit")) is_isolated = models.BooleanField(_(u"Is isolated?")) documentations = models.ManyToManyField(Source) - history = HistoricalRecords() class Meta: verbose_name = _(u"Base item") @@ -307,7 +305,7 @@ class BaseItem(models.Model): def __unicode__(self): return self.label -class Item(models.Model): +class Item(HistorizedItem): base_items = models.ManyToManyField(BaseItem, verbose_name=_(u"Base item")) order = models.IntegerField(_(u"Order")) label = models.CharField(_(u"Label"), max_length=60) @@ -322,7 +320,6 @@ class Item(models.Model): downstream_treatment = models.ForeignKey("Treatment", related_name='upstream_treatment', verbose_name=_("Downstream treatment")) dating = models.ForeignKey(Dating, verbose_name=_(u"Dating")) - history = HistoricalRecords() class Meta: verbose_name = _(u"Item") @@ -369,7 +366,7 @@ class ActType(GeneralType): verbose_name = _(u"Act type") verbose_name_plural = _(u"Act types") -class AdministrativeAct(models.Model): +class AdministrativeAct(HistorizedItem): operation = models.ForeignKey(Operation, related_name='+', verbose_name=_(u"Operation")) signature_date = models.DateField(_(u"Signature date")) @@ -378,7 +375,6 @@ class AdministrativeAct(models.Model): person = models.ForeignKey(Person, verbose_name=_(u"Person")) if settings.COUNTRY == 'fr': ref_sra = models.CharField(u"Référence SRA", max_length=15) - history = HistoricalRecords() class Meta: verbose_name = _(u"Administrative act") @@ -445,7 +441,7 @@ class TreatmentType(GeneralType): verbose_name = _(u"Treatment type") verbose_name_plural = _(u"Treatment types") -class Treatment(models.Model): +class Treatment(HistorizedItem): container = models.ForeignKey(Container, verbose_name=_(u"Container")) treatment_type = models.ForeignKey(TreatmentType, verbose_name=_(u"Treatment type")) @@ -453,7 +449,6 @@ class Treatment(models.Model): person = models.ForeignKey(Person, verbose_name=_(u'Person')) start_date = models.DateField(_(u"Start date")) end_date = models.DateField(_(u"End date")) - history = HistoricalRecords() class Meta: verbose_name = _(u"Treatment") |