from django.db import models from django.db.models.functions import Lower from django.utils.translation import gettext_lazy as _ class Instrument(models.Model): model = models.CharField(_("Modèle"), max_length=100, null=True, blank=True) prix = models.CharField(_("Prix"), max_length=100, default="", blank=True) etat = models.CharField( max_length=100, default="Bon état", choices=[ ("Bon état", _("Bon état")), ("Etat moyen", _("Etat moyen")), ("Mauvais état", _("Mauvais état")), ], ) marque = models.CharField(_("Marque"), max_length=100, null=True, blank=True) serial = models.CharField( _("Numéro de série"), max_length=100, default=" ", null=True, blank=True ) annee = models.CharField(_("Année d'achat"), max_length=100, null=True, blank=True) owner = models.CharField(_("Propriétaire"), max_length=100, default="Fanfare") user = models.CharField(_("Utilisateur"), max_length=100, blank=True) type = models.CharField(_("Instrument"), max_length=40, blank=False) statut = models.CharField( max_length=100, default="Disponible", choices=[("Disponible", _("Disponible")), ("Prêté", _("Prêté·e"))], ) infos = models.TextField(_("Infos utiles"), null=False, blank=True, default="") infos_en = models.TextField( "Infos utiles en anglais", null=False, blank=True, default="" ) def __str__(self): return self.type class Meta: verbose_name = _("Instrument") verbose_name_plural = _("Instruments") ordering = (Lower("type"),) class Reparation(models.Model): date = models.DateField(_("Date"), max_length=100) instru = models.ForeignKey( "Instrument", on_delete=models.CASCADE, verbose_name=_("Instrument") ) description = models.CharField( _("Description"), max_length=100, default=" ", blank=True ) description_en = models.CharField( _("Description en anglais"), max_length=100, default=" ", blank=True ) prix = models.CharField(_("Prix"), max_length=100, default="", blank=True) lieux = models.CharField(_("Lieux"), max_length=100, default=" ", blank=True) def __str__(self): return self.description class Meta: verbose_name = _("Réparation") verbose_name_plural = _("Réparations") ordering = ("date",)