-- SPDX-FileCopyrightText: 2022 Steffen Jost <jost@tcs.ifi.lmu.de>
--
-- SPDX-License-Identifier: AGPL-3.0-or-later

PrintJob  
  name          Text
  filename      FilePath
  file          ByteString      -- stores plain pdf; otherwise use FileContentReference Maybe
  created       UTCTime
  acknowledged  UTCTime Maybe
  recipient     UserId Maybe          OnDeleteCascade OnUpdateCascade   -- optional as some letters may contain just an address
  sender        UserId Maybe          OnDeleteSetNull OnUpdateCascade   -- senders and associations are optional
  course        CourseId Maybe        OnDeleteCascade OnUpdateCascade
  qualification QualificationId Maybe OnDeleteCascade OnUpdateCascade
  lmsUser       LmsIdent        Maybe OnDeleteCascade OnUpdateCascade   -- allows tracking if recipient has been notified; must be unique
  -- UniquePrintJobLmsUser lmsUser -- Note that in fact multiple print jobs per LMS user are possible!
  deriving Generic