Clock - Technische Spezifikation
  • Über das Projekt
  • Datenbank Referenz
    • Einleitendes
    • User Model
    • Contract Model
    • Shift Model
    • ClockedInShift Model
    • Report Model
  • User Stories
    • Einleitendes
    • User
    • Shift
    • Contract
    • Allgemeines
  • Business rules
    • Einleitendes
    • User Model
    • Shift Model
    • ClockedInShift Model
    • Contract Model
    • Report Model
Powered by GitBook
On this page
  1. Datenbank Referenz

ClockedInShift Model

Definition des ClockedInShift Models

PreviousShift ModelNextReport Model

Last updated 5 years ago

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 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.

UUID