| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- from django.db import models
- from django.utils.translation import gettext_lazy as _
- # Create your models here.
- class Helper(models.Model):
- date = models.DateField()
- ben = models.PositiveSmallIntegerField()
- best = models.PositiveSmallIntegerField(blank=True, null=True)
- info = models.TextField(blank=True, null=True)
- def __str__(self):
- return f"{self.date} - {self.ben} - {self.best}"
- class Reinigung(models.Model):
- class ShiftType(models.TextChoices):
- Beauftragen = 'Beauftragen' # Placeholder for "None" if you're using it
- Bestellt = 'Bestellt'
- date = models.DateField()
- auftrag = models.CharField(
- max_length=12,
- choices=ShiftType.choices,
- default='',
- null=True,
- )
- info = models.TextField(blank=True, null=True)
- def __str__(self):
- return f"{self.date} - {self.auftrag}"
- class Employee(models.Model):
- name = models.CharField(max_length=100)
- daily_workhours = models.PositiveIntegerField()
- info = models.TextField(blank=True, null=True)
- def __str__(self):
- return self.name
- class Shift(models.Model):
- class ShiftType(models.TextChoices):
- NONE = 'N', _('None') # Placeholder for "None" if you're using it
- VACATION = 'U', _('Urlaub')
- CATERING = 'C', _('Catering')
- SICK = 'K', _('Krank')
- RB = 'RB', _('Rufbereitschaft')
- SD = 'SO', _('Sonderdienst')
- KK = 'KKH', _('KKH')
- ST = 'ST', _('Stapler')
- AH = 'AH', _('Ausser Haus')
- date = models.DateField()
- start = models.TimeField(null=True, blank=True)
- end = models.TimeField(null=True, blank=True)
- shifttype = models.CharField(
- max_length=3,
- choices=ShiftType.choices,
- default=ShiftType.NONE,
- null=True,
- )
- employee = models.ForeignKey(Employee, on_delete=models.CASCADE)
- def __str__(self):
- return f"{self.date} - {self.get_shifttype_display()}"
- class Location(models.Model):
- name = models.CharField(max_length=100)
- def __str__(self):
- return self.name
- class Event(models.Model):
- class EventType(models.TextChoices):
- NONE = '', _('None')
- AUFBAU = 'AU', _('Aufbau')
- ABBAU = 'AB', _('Abbau')
- UMBAU = 'UM', _('Umbau')
- VATAG = 'VA', _('VA-Tag')
- SPIELTAG = 'ST', _('Spieltag')
- TRAINING = 'TR', _('Training')
- date = models.DateField()
- name = models.CharField(max_length=100)
- event_type = models.CharField(
- max_length=2,
- choices=EventType.choices,
- default=EventType.NONE,
- null=True,
- )
- location = models.ForeignKey(Location, on_delete=models.CASCADE)
- cvd = models.ForeignKey(Employee, related_name='cvt', on_delete=models.SET_NULL, null=True, blank=True)
- cvt = models.ForeignKey(Employee, related_name='cvd', on_delete=models.SET_NULL, null=True, blank=True)
- def __str__(self):
- return f"{self.date} - {self.name}"
|