chore(lms): revise db model after discussion
This commit is contained in:
parent
944ef46d84
commit
aa73359893
@ -1,17 +1,28 @@
|
|||||||
Qualification
|
Qualification
|
||||||
school SchoolId
|
school SchoolId --TODO: Ansprechpartner der Schule in Briefe erwähnen
|
||||||
name (CI Text)
|
|
||||||
shorthand (CI Text)
|
shorthand (CI Text)
|
||||||
|
name (CI Text)
|
||||||
description StoredMarkup Maybe -- user-defined large Html, ought to contain full description
|
description StoredMarkup Maybe -- user-defined large Html, ought to contain full description
|
||||||
validDuration CalendarDiffDays Maybe -- qualification is valid for this time
|
validDuration Word Maybe -- qualification is valid for this number of months
|
||||||
refreshWithin CalendarDiffDays Maybe -- refresher is scheduled within this duration before expiry
|
auditDuration Word Maybe -- number of month to keep audit log
|
||||||
refreshInvitation StoredMarkup Maybe -- email/letter to send
|
refreshWithin CalendarDiffDays Maybe -- refresher is scheduled within this number of month before expiry
|
||||||
expiryNotification StoredMarkup Maybe
|
-- refreshInvitation StoredMarkup -- fest verdrahtet I18N-MSGs, nur Anzeige auf Webseite
|
||||||
UniqueSchoolName name shorthand -- must be unique per school and name
|
-- expiryNotification StoredMarkup Maybe
|
||||||
|
elearningOnly Bool -- successful E-learing automatically increases validity
|
||||||
UniqueSchoolShort school shorthand -- must be unique per school and shorthand
|
UniqueSchoolShort school shorthand -- must be unique per school and shorthand
|
||||||
-- to be expanded later
|
UniqueSchoolName school name -- must be unique per school and name
|
||||||
deriving Generic
|
deriving Generic
|
||||||
|
|
||||||
|
-- Verknüpfung mit Exams fehlt only
|
||||||
|
|
||||||
|
QualificationUser
|
||||||
|
user User
|
||||||
|
qualification QualficationId
|
||||||
|
validUntil UTCTime
|
||||||
|
firstHeld UTCTime -- timestamp qualification earned
|
||||||
|
lastRefresh UTCTIme -- lastRefresh > validUntil possible, indicates E-Learning success, but needs more (e.g. an exam)
|
||||||
|
UniqueQualificationUser qualification user
|
||||||
|
|
||||||
QualificationEdit
|
QualificationEdit
|
||||||
user User
|
user User
|
||||||
time UTCTime
|
time UTCTime
|
||||||
@ -19,22 +30,30 @@ QualificationEdit
|
|||||||
deriving Generic
|
deriving Generic
|
||||||
|
|
||||||
-- LMS Interface Tables, need regular processing by background jobs
|
-- LMS Interface Tables, need regular processing by background jobs
|
||||||
|
-- Logging?
|
||||||
LmsUser
|
LmsUser
|
||||||
qualification QualificationId
|
qualification QualificationId
|
||||||
user UserId
|
user UserId
|
||||||
ident LmsIdent
|
ident LmsIdent
|
||||||
pin Text
|
pin Text
|
||||||
resetPin Bool
|
resetPin Bool
|
||||||
delete Bool
|
deleted Bool
|
||||||
started UTCTime
|
started UTCTime Maybe
|
||||||
|
ended UTCTime Maybe
|
||||||
UniqueLmsUser qualification ident
|
UniqueLmsUser qualification ident
|
||||||
deriving Generic
|
deriving Generic
|
||||||
|
|
||||||
|
LmsAudit
|
||||||
|
qualifaction QualifactionId
|
||||||
|
ident LmsIdent
|
||||||
|
lastSeen UTCTime
|
||||||
|
notificationType LmsNotification
|
||||||
|
|
||||||
LmsUserlist
|
LmsUserlist
|
||||||
qualification QualificationId
|
qualification QualificationId
|
||||||
ident LmsIdent
|
ident LmsIdent
|
||||||
failed Bool
|
failed Bool
|
||||||
|
timestamp UTCTime default=now()
|
||||||
UniqueLmsUserlist qualification ident
|
UniqueLmsUserlist qualification ident
|
||||||
deriving Generic
|
deriving Generic
|
||||||
|
|
||||||
@ -42,6 +61,7 @@ LmsUserlist
|
|||||||
LmsResult
|
LmsResult
|
||||||
qualification QualificationId
|
qualification QualificationId
|
||||||
ident LmsIdent
|
ident LmsIdent
|
||||||
success UTCTime
|
success Day
|
||||||
|
timestamp UTCTime default=now()
|
||||||
UniqueLmsResult qualification ident
|
UniqueLmsResult qualification ident
|
||||||
deriving Generic
|
deriving Generic
|
||||||
|
|||||||
@ -11,3 +11,8 @@ import Import.NoModel
|
|||||||
|
|
||||||
|
|
||||||
type LmsIdent = Text
|
type LmsIdent = Text
|
||||||
|
|
||||||
|
data LmsNotfication = Blocked | Successs | Alive
|
||||||
|
deriving (Eq, Ord, Read, Show, Enum, Bounded, Generic, Typeable)
|
||||||
|
deriving (Universe, Finite, NFData)
|
||||||
|
|
||||||
Loading…
Reference in New Issue
Block a user