8736c50d889a14210fe38e35de2211b78a5ed696
4 from django
.db
import models
5 from django
.utils
import timezone
8 # Create your models here.
9 class Personnel(models
.Model
):
10 """Infos générique sur le personnel du bureau"""
12 nom
= models
.CharField(max_length
=200,primary_key
=True)
14 def __unicode__(self
):
18 class Equipement(models
.Model
):
19 marque
= models
.CharField(max_length
=200,default
="HP")
20 modele
= models
.CharField(max_length
=200,blank
=True)
21 num_serie
= models
.CharField("Numéro de série",
22 max_length
=200,unique
=True)
23 date_acquisition
= models
.DateField("Date d'acquisition")
26 class Imprimante(Equipement
):
27 """Informations sur les imprimantes du bureau"""
29 CATEGORIE_IMPRIMANTE
= (
30 ("encre","Jet d'encre"),
32 ("multifonction","Multifonction"),
35 emplacement
= models
.CharField(max_length
=200)
36 fqdn
= models
.CharField("Nom DNS",max_length
=200)
41 choices
=CATEGORIE_IMPRIMANTE
44 def __unicode__(self
):
45 return "Imprimante: %s %s (%s)" %\
46 (self
.marque
,self
.modele
,self
.emplacement
)
49 class Consommable(Equipement
):
50 """Informations sur les consommables du bureau"""
52 CATEGORIE_CONSOMMABLE
= (
53 ("encre","Jet d'encre"),
55 ("autre","autres types"),
76 ("magenta","magenta"),
80 nom
= models
.CharField(max_length
=20,choices
=NOM_CONSOMMABLE
)
81 couleur
= models
.CharField(max_length
=20,choices
=NOM_COULEUR
)
83 models
.CharField(max_length
=20,choices
=CATEGORIE_CONSOMMABLE
)
84 date_expiration
= models
.DateField()
85 disponible
= models
.BooleanField(default
=True)
87 def __unicode__(self
):
88 return "%s %s (%s)" %(self
.nom
,self
.couleur
,self
.num_serie
)
90 class RetraitConsommable(models
.Model
):
91 demandeur
= models
.ForeignKey(Personnel
)
92 date_retrait
= models
.DateField("date du retrait",auto_now_add
=True)
93 code_consommable
= models
.OneToOneField(Consommable
)
94 imprimante_utilisee
= models
.ForeignKey(Imprimante
)
96 def __unicode__(self
):
97 annee_date_retrait
= self
.date_retrait
.year
98 mois_date_retrait
= self
.date_retrait
.month
99 jour_date_retrait
= self
.date_retrait
.day
100 return "%s retire par %s le %s/%s/%s" % (self
.code_consommable
,
101 self
.demandeur
,jour_date_retrait
,mois_date_retrait
,