feat(workflows): add archived timestamp

This commit is contained in:
Sarah Vaupel 2022-05-13 20:22:25 +02:00 committed by Sarah Vaupel
parent f742da17df
commit 088c2f5c75
3 changed files with 6 additions and 2 deletions

View File

@ -50,4 +50,5 @@ WorkflowWorkflow
scope (WorkflowScope TermIdentifier SchoolShorthand SqlBackendKey) -- TermId, SchoolId, CourseId
graph SharedWorkflowGraphId
state (WorkflowState FileReference SqlBackendKey) -- UserId
archived UTCTime Maybe
deriving Generic

View File

@ -48,9 +48,10 @@ workflowInstanceInitiateR rScope win = workflowsDisabledWarning MsgWorkflowInsta
wwId <- insert WorkflowWorkflow
{ workflowWorkflowInstance = Just wiId
, workflowWorkflowScope = workflowInstanceScope
, workflowWorkflowGraph = workflowInstanceGraph
, workflowWorkflowScope = workflowInstanceScope
, workflowWorkflowGraph = workflowInstanceGraph
, workflowWorkflowState
, workflowWorkflowArchived = Nothing -- FIXME: set to now + 2 months if current state is final state
}
return . Just $ do

View File

@ -200,12 +200,14 @@ getWorkflowWorkflowState' wwId Nothing = withReaderT (projectBackend @SqlBackend
, workflowWorkflow E.^. WorkflowWorkflowScope
, workflowWorkflow E.^. WorkflowWorkflowGraph
, E.veryUnsafeCoerceSqlExprValue $ workflowWorkflow E.^. WorkflowWorkflowState
, workflowWorkflow E.^. WorkflowWorkflowArchived
)
let
( E.Value workflowWorkflowInstance
, E.Value workflowWorkflowScope
, E.Value workflowWorkflowGraph
, E.Value (wwState :: PersistValue) -- Don't parse
, E.Value workflowWorkflowArchived
) = res
wwState' <- memcachedBy Nothing (WorkflowWorkflowStateParse wwState) . return $ fromPersistValue wwState
case wwState' of