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

Shift Model

Definition des Shift Models

Das Shift Model dient zur Repräsentation einer geleisteten "Arbeitsschicht". Eine Schicht ist der Zeitraum zwischen Beginn der Arbeit und dessen Ende. Es können pro Tag mehrere Schichten erstellt werden. Das Modell ist wie folgt definiert:

Feldname

Feld Type

Nutzung

id

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

user

ForeignKey(to=User)

Relation zu einem Usereintrag

started

DateTimeField()

Startzeit und Datum

stopped

DateTimeField()

Endzeit und Datum

contract

ForeignKey(to=Contract)

Relation zu einem Vertragseintrag

type

CharField(choices=["Shift", "Sick", "Vacation"])

Art der Schicht (normal, krank, Urlaub)

note

TextField()

Eine vom Benutzer eingegebene Bemerkung (optional)

tags

TaggableManager()

Userdefinierte Tags zu dieser Schicht (zur Strukturierung der Aufgaben)

was_reviewed

BooleanField(default=True)

locked

BooleanField(default=False)

Status, ob eine Schicht bereits für das Bearbeiten gesperrt wurde

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

---------

-----------

--------

Ein Eintrag in der Shift-Tabelle ist mit dem Nutzer, der sie speichert bzw. der gearbeitet hat und zum jeweiligen Vertrag verknüpft. Ferner stellt er eine zusammenhängende Arbeitszeit am Tag, jedoch nicht die insgesamt an diesem Tag gearbeitete Zeit dar. Diese kann sich aus mehreren Schichten zusammensetzen.

Bemerkung

Das Feld was_reviewed definiert, ob eine Schicht als geplant gilt. Eine geplante Schicht liegt mit Start- und Endzeit/datum in der Zukunft. Bei gestochenen bzw. manuell eingetragenen Schichten (Start- und Endzeit/-datum liegen in der Vergangenheit) ist der Wert des Feldes automatisch auf True gesetzt.

PreviousContract ModelNextClockedInShift Model

Last updated 5 years ago

Eine wird zur Identifikation einer Schicht in der Datenbank benutzt

Status, ob eine geplante Schicht vom User bestätigt wurde (s. )

Mehr dazu in den .

Business Rules
UUID
Bemerkung