tvpl.api

<back to all web services

WorkflowStatisticsRequest

Requires Authentication
The following routes are available for this service:
GET/workflow/statistics
import 'package:servicestack/servicestack.dart';

class LeftMenuItem implements IConvertible
{
    int? id;
    String? name;
    int? count;
    bool? isParty;
    int? level1ParentId;
    int? level2ParentId;
    int? level;
    String? type;
    String? key;
    // @ignore()
    List<LeftMenuItem>? children;

    LeftMenuItem({this.id,this.name,this.count,this.isParty,this.level1ParentId,this.level2ParentId,this.level,this.type,this.key,this.children});
    LeftMenuItem.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        name = json['name'];
        count = json['count'];
        isParty = json['isParty'];
        level1ParentId = json['level1ParentId'];
        level2ParentId = json['level2ParentId'];
        level = json['level'];
        type = json['type'];
        key = json['key'];
        children = JsonConverters.fromJson(json['children'],'List<LeftMenuItem>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'name': name,
        'count': count,
        'isParty': isParty,
        'level1ParentId': level1ParentId,
        'level2ParentId': level2ParentId,
        'level': level,
        'type': type,
        'key': key,
        'children': JsonConverters.toJson(children,'List<LeftMenuItem>',context!)
    };

    getTypeName() => "LeftMenuItem";
    TypeContext? context = _ctx;
}

class WorkflowStatisticsResponse implements IConvertible
{
    int? code;
    String? message;
    List<LeftMenuItem>? data;

    WorkflowStatisticsResponse({this.code,this.message,this.data});
    WorkflowStatisticsResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        code = json['code'];
        message = json['message'];
        data = JsonConverters.fromJson(json['data'],'List<LeftMenuItem>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'code': code,
        'message': message,
        'data': JsonConverters.toJson(data,'List<LeftMenuItem>',context!)
    };

    getTypeName() => "WorkflowStatisticsResponse";
    TypeContext? context = _ctx;
}

class WorkflowStatisticsRequest implements IConvertible
{
    WorkflowStatisticsRequest();
    WorkflowStatisticsRequest.fromJson(Map<String, dynamic> json) : super();
    fromMap(Map<String, dynamic> json) {
        return this;
    }

    Map<String, dynamic> toJson() => {};
    getTypeName() => "WorkflowStatisticsRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'etc_api.vsmlab.vn', types: <String, TypeInfo> {
    'LeftMenuItem': TypeInfo(TypeOf.Class, create:() => LeftMenuItem()),
    'List<LeftMenuItem>': TypeInfo(TypeOf.Class, create:() => <LeftMenuItem>[]),
    'WorkflowStatisticsResponse': TypeInfo(TypeOf.Class, create:() => WorkflowStatisticsResponse()),
    'WorkflowStatisticsRequest': TypeInfo(TypeOf.Class, create:() => WorkflowStatisticsRequest()),
});

Dart WorkflowStatisticsRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /workflow/statistics 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: 
	[
		{
			id: 0,
			name: String,
			count: 0,
			isParty: False,
			level1ParentId: 0,
			level2ParentId: 0,
			level: 0,
			type: String,
			key: String,
			children: 
			[
				{
					id: 0,
					name: String,
					count: 0,
					isParty: False,
					level1ParentId: 0,
					level2ParentId: 0,
					level: 0,
					type: String,
					key: String,
					children: 
					[
						{
							id: 0,
							name: String,
							count: 0,
							isParty: False,
							level1ParentId: 0,
							level2ParentId: 0,
							level: 0,
							type: String,
							key: String
						}
					]
				}
			]
		}
	]
}