models.py 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. from django.db import models
  2. from django.utils import timezone
  3. import datetime
  4. from azienda.models import Azienda,Sede
  5. #from documento.models import *
  6. class Utente(models.Model):
  7. codicefiscale = models.CharField(max_length=16,null=False)
  8. nome = models.CharField(max_length=128,null=False,default="")
  9. datanascita = models.DateField(null=True)
  10. luogonascita = models.CharField(max_length=256,null=False,default="")
  11. inserimento = models.DateField(null=False,default=timezone.now)
  12. mail = models.CharField(max_length=128,null=False,default="")
  13. azienda = models.ForeignKey(Azienda,on_delete=models.PROTECT,null=True)
  14. sede = models.ForeignKey(Sede,on_delete=models.PROTECT,null=True)
  15. daticompleti=models.BooleanField(null=False,default=0)
  16. pin = models.CharField(max_length=64,null=False,default="")
  17. encrypt=models.CharField(max_length=64,null=False,default="")
  18. uuid = models.CharField(max_length=32,null=False,default="")
  19. lostpin = models.BooleanField(null=False,default=False)
  20. cambiopassword = models.BooleanField(null=False,default=False)
  21. forzanuovapassword = models.BooleanField(null=False,default=False)
  22. otppassword = models.BooleanField(null=False,default=False)
  23. enabled = models.BooleanField(null=False,default=True)
  24. special = models.BooleanField(null=False,default=False)
  25. @property
  26. def documenti(self):
  27. return len(self.documento_set.all())
  28. class Meta:
  29. constraints = [ models.UniqueConstraint(fields=['nome','codicefiscale'], name="unique-utente") ]
  30. indexes = [ models.Index(fields=['codicefiscale','nome']) ]
  31. def __str__(self):
  32. return f"{self.id}: {self.nome}"