diff --git a/models/workflows.model b/models/workflows.model index f1eb7afa2..c19777172 100644 --- a/models/workflows.model +++ b/models/workflows.model @@ -1,5 +1,5 @@ WorkflowDefinition - graph WorkflowGraph + graph (WorkflowGraph UniWorX) initiator (WorkflowRole UserId AuthDNF) WorkflowInitiator diff --git a/src/Model/Types/Workflow.hs b/src/Model/Types/Workflow.hs index b0eafd186..b7c021a10 100644 --- a/src/Model/Types/Workflow.hs +++ b/src/Model/Types/Workflow.hs @@ -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