diff options
| author | Étienne Loks <etienne.loks@peacefrogs.net> | 2011-01-14 01:17:05 +0100 |
|---|---|---|
| committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2011-01-14 01:17:05 +0100 |
| commit | dc3dd6ffd4be05b613a4bbba56e907b7ca2dea02 (patch) | |
| tree | b7fe8f621f6165f8b7a5cdb28fa2e1052d9e5e6b /ishtar/furnitures/models.py | |
| parent | f6d282bd88ef69501b0a01791e7a1eee22cb1a5b (diff) | |
| download | Ishtar-dc3dd6ffd4be05b613a4bbba56e907b7ca2dea02.tar.bz2 Ishtar-dc3dd6ffd4be05b613a4bbba56e907b7ca2dea02.zip | |
Implementation of operation creation (refs #16)
Diffstat (limited to 'ishtar/furnitures/models.py')
| -rw-r--r-- | ishtar/furnitures/models.py | 34 |
1 files changed, 21 insertions, 13 deletions
diff --git a/ishtar/furnitures/models.py b/ishtar/furnitures/models.py index f77fe6caf..e3c434f7a 100644 --- a/ishtar/furnitures/models.py +++ b/ishtar/furnitures/models.py @@ -79,6 +79,7 @@ class GeneralType(models.Model): @classmethod def get_types(cls): + yield ('', '--') for item in cls.objects.filter(available=True).all(): yield (item.id, _(item.label)) @@ -288,28 +289,29 @@ class OperationType(GeneralType): verbose_name = _(u"Operation type") verbose_name_plural = _(u"Operation types") -class VestigeType(GeneralType): +class RemainType(GeneralType): class Meta: - verbose_name = _(u"Vestige type") - verbose_name_plural = _(u"Vestige types") + verbose_name = _(u"Remain type") + verbose_name_plural = _(u"Remain types") class Operation(BaseHistorizedItem, OwnPerms): - name = models.CharField(_(u"Name"), max_length=120) - start_date = models.DateField(_(u"Start date")) - end_date = models.DateField(_(u"End date")) + start_date = models.DateField(_(u"Start date"), null=True, blank=True) + end_date = models.DateField(_(u"End date"), null=True, blank=True) in_charge = models.ForeignKey('Person', related_name='+', verbose_name=_(u"In charge")) - operation_code = models.CharField(_(u"Operation code"), max_length=20) + year = models.IntegerField(_(u"Year")) + operation_code = models.IntegerField(_(u"Operation code")) associated_file = models.ForeignKey(File, related_name='+', verbose_name=_(u"File")) operation_type = models.ForeignKey(OperationType, related_name='+', verbose_name=_(u"Operation type")) - vestiges = models.ManyToManyField("VestigeType") + remains = models.ManyToManyField("RemainType") towns = models.ManyToManyField("Town") if settings.COUNTRY == 'fr': - code_patriarche = models.IntegerField(u"Code PATRIARCHE") - code_pat = models.CharField(u"Code PAT", max_length=10) - code_dracar = models.CharField(u"Code DRACAR", max_length=10) + code_patriarche = models.IntegerField(u"Code PATRIARCHE", null=True, + blank=True) + code_dracar = models.CharField(u"Code DRACAR", max_length=10, null=True, + blank=True) comment = models.TextField(_(u"Comment"), null=True, blank=True) history = HistoricalRecords() @@ -324,10 +326,16 @@ class Operation(BaseHistorizedItem, OwnPerms): ) def __unicode__(self): - return self.name + items = [unicode(_('Intercommunal'))] + if self.towns.count() == 1: + items[0] = unicode(self.towns.all()[0]) + items += [unicode(getattr(self, k))[:12] for k in ['year', + 'operation_code',] + if getattr(self, k)] + return u" - ".join(items) -class Parcel(LightHistorizedItem) : +class Parcel(LightHistorizedItem): associated_file = models.ForeignKey(File, related_name='parcels', blank=True, null=True, verbose_name=_(u"File")) operation = models.ForeignKey(Operation, related_name='parcel', blank=True, |
