models.py 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. from django import forms
  2. from django.db import models
  3. from django.utils import timezone
  4. from parc_info.models import Services as Services
  5. SITE = [
  6. ('GENT', 'Gentilly'),
  7. ('CAP', 'Ambroise Paré'),
  8. ('HPN', 'Hopital Privé de Nancy Loraine'),
  9. ('EXT', 'Extérieur'),
  10. ]
  11. login_type = (
  12. (u'pnom', u'1er lettre du Prenom puis Nom'),
  13. (u'pnomMGAG', u'1er lettre du Prenom puis Nom en Mag'),
  14. (u'pre.nom', u'Prenom.Nom'),
  15. (u'preMAG.nomMAG', u'PRENOM.NOM'),
  16. (u'mixed', u'Au choix'),
  17. (u'pre.nom', u'Lié a AD'),
  18. (u'pre.nom@el', u'Lié au compte email'),
  19. (u'autre', u'Autre'),
  20. )
  21. class GES_APP(models.Model):
  22. GESAP_Nom = models.CharField("Nom", max_length=16)
  23. GESAP_ltype = models.CharField("Type de Login",choices=login_type, max_length=48, default='pre.nom')
  24. GESAP_Sup_Nom = models.CharField("Champ complaimentaire", max_length=16, blank=True)
  25. GESAP_Commentaire = models.TextField("Aide pour la création du compte", blank=True)
  26. def __str__(self):
  27. return self.GESAP_Nom
  28. class Meta:
  29. verbose_name = "Les apllications métiers"
  30. verbose_name_plural = "Les apllications métiers"
  31. ordering = ['GESAP_Nom']
  32. class GES_Fonction(models.Model):
  33. GESFC_Nom = models.CharField("Nom", max_length=16)
  34. def __str__(self):
  35. return self.GESFC_Nom
  36. class Meta:
  37. verbose_name = "Les fonctions"
  38. verbose_name_plural = "Les fonctions"
  39. ordering = ['GESFC_Nom']
  40. class GES_User(models.Model):
  41. GES_L_Site = models.CharField("Site", max_length=4, choices=SITE, default='HPN')
  42. GES_Nom = models.CharField("Nom", max_length=16)
  43. GES_Prenom = models.CharField("Prénom", max_length=16)
  44. GES_Motdepasse = models.CharField("Mot de passe", max_length=16)
  45. GES_Service = models.ForeignKey(Services, on_delete=models.CASCADE)
  46. GES_Fonction = models.ForeignKey(GES_Fonction, on_delete=models.CASCADE, blank=True, null=True)
  47. GES_APPs = models.ManyToManyField(GES_APP)
  48. GES_OK = models.BooleanField("Création complété", default = False)
  49. ordering = ['GES_Service']
  50. GES_Commentaire = models.TextField("Commentaires", blank=True, null=True)
  51. def __str__(self):
  52. return self.GES_Nom + ' ' + self.GES_Prenom
  53. class Meta:
  54. verbose_name = "Les utilisateurs"
  55. verbose_name_plural = "Les utilisateurs"
  56. class GES_APPLink(models.Model):
  57. GES_APPLink_User = models.ForeignKey(GES_User, on_delete=models.CASCADE)
  58. GES_APPLink_APP = models.ForeignKey(GES_APP, on_delete=models.CASCADE)
  59. GES_APPLink_Login = models.CharField("Login", max_length=48)
  60. GES_APPLink_MDP = models.CharField("Mot de passe", max_length=16)
  61. GES_APPLink_Sup = models.CharField("Info supplaimentaire", max_length=16, blank=True)
  62. GES_APPLink_Create = models.BooleanField("Crée", default = False)
  63. class GES_User_form(forms.ModelForm):
  64. class Meta:
  65. model = GES_User
  66. fields = '__all__'
  67. class GES_APPLink_form(forms.ModelForm):
  68. class Meta:
  69. model = GES_APPLink
  70. fields = ['GES_APPLink_Login', 'GES_APPLink_MDP', 'GES_APPLink_Sup']
  71. class PSearch_form(forms.Form):
  72. PSearch = forms.CharField(label='Recherche', max_length=128)