taskExecute/mq/workflow.go

74 lines
2.4 KiB
Go

package mq
type Workflow struct {
Nodes []WorkflowNode `json:"nodes"`
Edges []WorkflowEdge `json:"edges"`
}
type WorkflowNode struct {
Id string `json:"id"`
Type string `json:"type"`
X int `json:"x"`
Y int `json:"y"`
Properties NodeProperties `json:"properties,omitempty"`
Text NodePropertiesText `json:"text,omitempty"`
}
type NodeProperties struct {
Ui string `json:"ui"`
Id string `json:"id,omitempty"`
Type string `json:"type,omitempty"`
X int `json:"x,omitempty"`
Y int `json:"y,omitempty"`
Text NodePropertiesText `json:"text,omitempty"`
NodeData NodeData `json:"nodeData,omitempty"`
}
type NodePropertiesText struct {
X int `json:"x"`
Y int `json:"y"`
Value string `json:"value"`
}
type NodeData struct {
Method string `json:"method,omitempty"`
Width int `json:"width,omitempty"`
Height int `json:"height,omitempty"`
EqualProportion bool `json:"equalProportion,omitempty"`
RotationAngle int `json:"rotationAngle,omitempty"`
Format string `json:"format,omitempty"`
ResultFormat string `json:"resultFormat,omitempty"`
Proto string `json:"proto,omitempty"`
Url string `json:"url,omitempty"`
MethodType string `json:"methodType,omitempty"`
ContentType string `json:"contentType,omitempty"`
DynamicValidateForm DynamicForm `json:"dynamicValidateForm,omitempty"`
ResultData interface{} `json:"resultData,omitempty"`
Topic string `json:"topic,omitempty"`
}
type DynamicForm struct {
Fields []RequestField `json:"fields"`
}
type RequestField struct {
Key string `json:"key"`
Type string `json:"type"`
Id int64 `json:"id"`
}
type WorkflowEdge struct {
Id string `json:"id"`
Type string `json:"type"`
SourceNodeId string `json:"sourceNodeId"`
TargetNodeId string `json:"targetNodeId"`
StartPoint Point `json:"startPoint"`
EndPoint Point `json:"endPoint"`
Properties interface{} `json:"properties"`
PointsList []Point `json:"pointsList"`
}
type Point struct {
X int `json:"x"`
Y int `json:"y"`
}