| GET | /WorkflowStep/flowchart |
|---|
import 'package:servicestack/servicestack.dart';
class WorkflowNode implements IConvertible
{
int? stepId;
String? stepName;
int? signerId;
String? signerName;
String? departmentName;
String? telephone;
String? avatar;
String? email;
int? signerType;
int? actionType;
int? status;
String? statusText;
String? signStatusText;
DateTime? signAt;
bool? isSigned;
int? confirmStatus;
String? confirmStatusText;
int? signedFileId;
String? signedFileName;
bool? isCurrent;
String? reasonReturn;
DateTime? returnDate;
DateTime? actionDate;
int? orderIndex;
bool? isUsingForm;
WorkflowNode({this.stepId,this.stepName,this.signerId,this.signerName,this.departmentName,this.telephone,this.avatar,this.email,this.signerType,this.actionType,this.status,this.statusText,this.signStatusText,this.signAt,this.isSigned,this.confirmStatus,this.confirmStatusText,this.signedFileId,this.signedFileName,this.isCurrent,this.reasonReturn,this.returnDate,this.actionDate,this.orderIndex,this.isUsingForm});
WorkflowNode.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
stepId = json['stepId'];
stepName = json['stepName'];
signerId = json['signerId'];
signerName = json['signerName'];
departmentName = json['departmentName'];
telephone = json['telephone'];
avatar = json['avatar'];
email = json['email'];
signerType = json['signerType'];
actionType = json['actionType'];
status = json['status'];
statusText = json['statusText'];
signStatusText = json['signStatusText'];
signAt = JsonConverters.fromJson(json['signAt'],'DateTime',context!);
isSigned = json['isSigned'];
confirmStatus = json['confirmStatus'];
confirmStatusText = json['confirmStatusText'];
signedFileId = json['signedFileId'];
signedFileName = json['signedFileName'];
isCurrent = json['isCurrent'];
reasonReturn = json['reasonReturn'];
returnDate = JsonConverters.fromJson(json['returnDate'],'DateTime',context!);
actionDate = JsonConverters.fromJson(json['actionDate'],'DateTime',context!);
orderIndex = json['orderIndex'];
isUsingForm = json['isUsingForm'];
return this;
}
Map<String, dynamic> toJson() => {
'stepId': stepId,
'stepName': stepName,
'signerId': signerId,
'signerName': signerName,
'departmentName': departmentName,
'telephone': telephone,
'avatar': avatar,
'email': email,
'signerType': signerType,
'actionType': actionType,
'status': status,
'statusText': statusText,
'signStatusText': signStatusText,
'signAt': JsonConverters.toJson(signAt,'DateTime',context!),
'isSigned': isSigned,
'confirmStatus': confirmStatus,
'confirmStatusText': confirmStatusText,
'signedFileId': signedFileId,
'signedFileName': signedFileName,
'isCurrent': isCurrent,
'reasonReturn': reasonReturn,
'returnDate': JsonConverters.toJson(returnDate,'DateTime',context!),
'actionDate': JsonConverters.toJson(actionDate,'DateTime',context!),
'orderIndex': orderIndex,
'isUsingForm': isUsingForm
};
getTypeName() => "WorkflowNode";
TypeContext? context = _ctx;
}
class GetWorkflowFlowchartResponse implements IResponseRequest, IConvertible
{
int? code;
String? message;
List<WorkflowNode>? data;
GetWorkflowFlowchartResponse({this.code,this.message,this.data});
GetWorkflowFlowchartResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
code = json['code'];
message = json['message'];
data = JsonConverters.fromJson(json['data'],'List<WorkflowNode>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'code': code,
'message': message,
'data': JsonConverters.toJson(data,'List<WorkflowNode>',context!)
};
getTypeName() => "GetWorkflowFlowchartResponse";
TypeContext? context = _ctx;
}
class GetWorkflowFlowchartRequest implements IConvertible
{
int? workflowId;
GetWorkflowFlowchartRequest({this.workflowId});
GetWorkflowFlowchartRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
workflowId = json['workflowId'];
return this;
}
Map<String, dynamic> toJson() => {
'workflowId': workflowId
};
getTypeName() => "GetWorkflowFlowchartRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'etc_api.vsmlab.vn', types: <String, TypeInfo> {
'WorkflowNode': TypeInfo(TypeOf.Class, create:() => WorkflowNode()),
'GetWorkflowFlowchartResponse': TypeInfo(TypeOf.Class, create:() => GetWorkflowFlowchartResponse()),
'List<WorkflowNode>': TypeInfo(TypeOf.Class, create:() => <WorkflowNode>[]),
'GetWorkflowFlowchartRequest': TypeInfo(TypeOf.Class, create:() => GetWorkflowFlowchartRequest()),
});
Dart GetWorkflowFlowchartRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /WorkflowStep/flowchart HTTP/1.1 Host: etc-api.vsmlab.vn Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
code: 0,
message: String,
data:
[
{
stepId: 0,
stepName: String,
signerId: 0,
signerName: String,
departmentName: String,
telephone: String,
avatar: String,
email: String,
signerType: 0,
actionType: 0,
status: 0,
statusText: String,
signStatusText: String,
signAt: "0001-01-01T00:00:00.0000000+07:06",
isSigned: False,
confirmStatus: 0,
confirmStatusText: String,
signedFileId: 0,
signedFileName: String,
isCurrent: False,
reasonReturn: String,
returnDate: "0001-01-01T00:00:00.0000000+07:06",
actionDate: "0001-01-01T00:00:00.0000000+07:06",
orderIndex: 0,
isUsingForm: False
}
]
}