ClockedInShift Model

Definition des ClockedInShift Models

Das ClockedInShift Model dient zur Speicherung einer eingestochenen aber nicht beendeten Schicht. Sie repräsentiert den persistenten Zustand, in dem ein Nutzer im Frontend auf einem Gerät eingestochen hat, dort die Schicht allerdings nicht beendet hat. Durch das zwischenspeichern ist es nun möglich, von einem anderen Gerät, einer anderen Browsersitzung oder nachträglich (zu einem anderen Zeitpunkt) auszustechen. Das Model ist wie folgt definiert:

Feldname

Feld Type

Nutzung

id

UUIDField(primary_key= True, , default=uuid.uuid4, editable=False, unique=True)

Eine UUID wird zur Identifikation einer Schicht in der Datenbank benutzt

user

OneToOneField(to=User, on_delete=models.CASCADE)

Einzigartige Relation zu einem Usereintrag

contract

OneToOneField(to=Contract, on_delete=models.CASCADE)

Relation zu einem Vertragseintrag

started

DateTimeField()

Startzeit und Datum

created_at

DateTimeField(auto_now_add=True)

Timestamp (Zeitpunkt), wann der Eintrag erstellt wurde

created_by

ForeignKey(to=User)

User, von dem der Eintrag erstellt wurde

modified_at

DateTimeField(auto_now=True)

Timestamp, an dem der Eintrag zuletzt modifiziert wurde

modified_by

ForeignKey(to=User)

User, der den Eintrag zuletzt modifiziert hat

Bemerkung

Die Einschränkung, dass für jeden Nutzer nur ein Eintrag in der ClockedInShift-Tabelle existieren darf ist durch das OneToOneField(to=User) realisiert.

Last updated