refactor(workflow): more on adts
This commit is contained in:
parent
50b3fb8dcf
commit
094421ae5c
@ -1,5 +1,5 @@
|
||||
WorkflowDefinition
|
||||
graph WorkflowGraph
|
||||
graph (WorkflowGraph UniWorX)
|
||||
initiator (WorkflowRole UserId AuthDNF)
|
||||
|
||||
WorkflowInitiator
|
||||
|
||||
@ -18,37 +18,37 @@ deriveJSON defaultOptions ''WorkflowGraphNode
|
||||
data WorkflowEdgePayload = WEPText Text
|
||||
| WEPBool Bool
|
||||
deriving (Eq, Ord, Show, Read, Data, Generic, Typeable)
|
||||
|
||||
deriveJSON defaultOptions
|
||||
{ constructorTagModifier = camelToPathPiece' 3
|
||||
} ''WorkflowEdgePayload
|
||||
data WorkflowEdgePayload' = WEPText' | WEPBool'
|
||||
deriving (Eq, Ord, Enum, Show, Read, Data, Generic, Typeable)
|
||||
|
||||
type WorkflowEdgePayloadLabel = CI Text
|
||||
data WorkflowGraphEdge = WGE
|
||||
data WorkflowGraphEdge site = WGE
|
||||
{ wgeActors :: () -- TODO
|
||||
, wgeTarget :: WorkflowGraphNode
|
||||
--, wgeForm :: Map Text (FieldType, FieldSettings UniWorX)
|
||||
, wgeForm :: Map Text (WorkflowEdgePayload', FieldSettings site)
|
||||
, wgePayload :: Map WorkflowEdgePayloadLabel WorkflowEdgePayload
|
||||
}
|
||||
deriving (Eq, Ord, Show, Read, Data, Generic, Typeable)
|
||||
deriveJSON defaultOptions ''WorkflowGraphEdge
|
||||
-- deriveJSON defaultOptions ''WorkflowGraphEdge
|
||||
|
||||
data WorkflowGraph = WG
|
||||
data WorkflowGraph site = WG
|
||||
{ wgNodes :: Set WorkflowGraphNode
|
||||
, wgEdges :: Set WorkflowGraphEdge
|
||||
, wgEdges :: Set (WorkflowGraphEdge site)
|
||||
}
|
||||
deriving (Eq, Ord, Show, Read, Data, Generic, Typeable)
|
||||
deriveJSON defaultOptions ''WorkflowGraph
|
||||
-- deriveJSON defaultOptions ''WorkflowGraph
|
||||
|
||||
data WorkflowInstanceScope term school course = WISGlobal
|
||||
| WISTerm term
|
||||
| WISSchool school
|
||||
| WISCourse course
|
||||
deriving (Eq, Ord, Show, Read, Data, Generic, Typeable)
|
||||
|
||||
deriveJSON defaultOptions
|
||||
{ constructorTagModifier = camelToPathPiece' 3
|
||||
} ''WorkflowInstanceScope
|
||||
data WorkflowInstanceScope' = WISTerm' | WISSchool' | WISCourse'
|
||||
deriving (Eq, Ord, Enum, Read, Show, Data, Generic, Typeable)
|
||||
|
||||
data WorkflowRole user authdnf = WorkflowRoleUser user
|
||||
| WorkflowRoleAuthorized authdnf
|
||||
|
||||
Loading…
Reference in New Issue
Block a user