--- /dev/null
+# encoding: utf-8
+
+from django.db import models
+
+
+class ElementManager(models.Manager):
+
+ def __init__(self, niveau):
+ super(ElementManager, self).__init__()
+ self.niveau = niveau
+
+ def get_query_set(self):
+ qs = super(ElementManager, self).get_query_set()
+ return qs.filter(niveau=self.niveau)
+
+
+class Element(models.Model):
+ id = models.CharField(max_length=74, primary_key=True)
+ niveau = models.IntegerField()
+ code = models.CharField(max_length=72, db_index=True)
+ timestamp = models.BigIntegerField()
+ nom = models.CharField(max_length=36)
+
+ # Managers
+ objects = models.Manager()
+ comptes_comptables = ElementManager(1)
+ tiers_operations = ElementManager(2)
+ projets_postes = ElementManager(3)
+
+ class Meta:
+ db_table = 'coda_element'
+ ordering = ['id']
+
+ def __unicode__(self):
+ return self.code
+
+
+class Ecriture(models.Model):
+ id = models.CharField(max_length=25, primary_key=True)
+ code = models.CharField(max_length=12)
+ numero = models.CharField(max_length=12)
+ timestamp = models.BigIntegerField()
+ periode = models.IntegerField()
+ annee = models.IntegerField()
+ date = models.DateField()
+
+ class Meta:
+ db_table = 'coda_ecriture'
+ ordering = ['id']
+
+
+class LigneEcriture(models.Model):
+ DEBIT_CREDIT_CHOICES = (
+ ('D', 'Débit'),
+ ('C', 'Crédit'),
+ )
+ ETAT_PAIEMENT_CHOICES = (
+ ('D', 'D-Disponible'),
+ ('A', 'A-Attente'),
+ ('X', 'X-Fermé (non-lettrable)'),
+ ('P', 'P-Payé'),
+ ('O', 'O-Proposé'),
+ )
+
+ id = models.CharField(max_length=36, primary_key=True)
+ ecriture = models.ForeignKey(Ecriture, related_name='doclines')
+ numero = models.IntegerField()
+ timestamp = models.BigIntegerField()
+ compte_comptable = models.ForeignKey(Element, related_name='+')
+ tiers_operation = models.ForeignKey(Element, related_name='+')
+ projet_poste = models.ForeignKey(Element, related_name='+')
+ description = models.CharField(max_length=36)
+ montant_eur = models.DecimalField(max_digits=17, decimal_places=2)
+ debit_credit = models.CharField(max_length=1, choices=DEBIT_CREDIT_CHOICES)
+ numero_facture = models.CharField(max_length=32)
+ numero_avoir = models.CharField(max_length=32)
+ implantation = models.CharField(max_length=32)
+ salarie = models.CharField(max_length=32)
+ numero_cheque = models.CharField(max_length=32)
+ etat_paiement = models.CharField(max_length=1, choices=ETAT_PAIEMENT_CHOICES)
+
+ class Meta:
+ db_table = 'coda_ligneecriture'
+ ordering = ['id']
# encoding: utf-8
-from django.conf import settings
-from django.db import models
+from auf.django.coda.managedcoda import models as managedcoda
-class ElementManager(models.Manager):
- def __init__(self, niveau):
- super(ElementManager, self).__init__()
- self.niveau = niveau
-
- def get_query_set(self):
- qs = super(ElementManager, self).get_query_set()
- return qs.filter(niveau=self.niveau)
-
-
-class Element(models.Model):
- id = models.CharField(max_length=74, primary_key=True)
- niveau = models.IntegerField()
- code = models.CharField(max_length=72, db_index=True)
- date_modification = models.DateField()
- nom = models.CharField(max_length=36)
-
- # Managers
- objects = models.Manager()
- comptes_comptables = ElementManager(1)
- tiers_operations = ElementManager(2)
- projets_postes = ElementManager(3)
+class Element(managedcoda.Element):
class Meta:
+ proxy = True
managed = False
- db_table = 'coda_element'
- ordering = ['id']
- def __unicode__(self):
- return self.code
-class Ecriture(models.Model):
- id = models.CharField(max_length=25, primary_key=True)
- code = models.CharField(max_length=12)
- numero = models.CharField(max_length=12)
- date_modification = models.DateField()
- periode = models.IntegerField()
- annee = models.IntegerField()
- date = models.DateField()
+class Ecriture(managedcoda.Ecriture):
class Meta:
+ proxy = True
managed = False
- db_table = 'coda_ecriture'
- ordering = ['id']
-
-class LigneEcriture(models.Model):
- DEBIT_CREDIT_CHOICES = (
- ('D', 'Débit'),
- ('C', 'Crédit'),
- )
- ETAT_PAIEMENT_CHOICES = (
- ('D', 'D-Disponible'),
- ('A', 'A-Attente'),
- ('X', 'X-Fermé (non-lettrable)'),
- ('P', 'P-Payé'),
- ('O', 'O-Proposé'),
- )
- id = models.CharField(max_length=36, primary_key=True)
- ecriture = models.ForeignKey(Ecriture, related_name='doclines')
- numero = models.IntegerField()
- date_modification = models.DateField()
- compte_comptable = models.ForeignKey(Element, related_name='+')
- tiers_operation = models.ForeignKey(Element, related_name='+')
- projet_poste = models.ForeignKey(Element, related_name='+')
- description = models.CharField(max_length=36)
- montant_eur = models.DecimalField(max_digits=17, decimal_places=2)
- debit_credit = models.CharField(max_length=1, choices=DEBIT_CREDIT_CHOICES)
- numero_facture = models.CharField(max_length=32)
- numero_avoir = models.CharField(max_length=32)
- implantation = models.CharField(max_length=32)
- salarie = models.CharField(max_length=32)
- numero_cheque = models.CharField(max_length=32)
- etat_paiement = models.CharField(max_length=1, choices=ETAT_PAIEMENT_CHOICES)
+class LigneEcriture(managedcoda.LigneEcriture):
class Meta:
+ proxy = True
managed = False
- db_table = 'coda_ligne_ecriture'
- ordering = ['id']