/* Options: Date: 2026-04-17 20:37:59 Version: 6.110 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://qlcn-api.vsmlab.vn //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: SearchTemplateRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class PagingRequest implements IConvertible { int? page; int? limit; PagingRequest({this.page,this.limit}); PagingRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { page = json['page']; limit = json['limit']; return this; } Map toJson() => { 'page': page, 'limit': limit }; getTypeName() => "PagingRequest"; TypeContext? context = _ctx; } abstract class IResponseRequest { int? code; String? message; } class DocumentTemplate implements IConvertible { int? id; // @required() String? title; String? description; bool? isActive; String? fileKey; String? fileUrl; String? fileName; int? fileSize; DocumentTemplate({this.id,this.title,this.description,this.isActive,this.fileKey,this.fileUrl,this.fileName,this.fileSize}); DocumentTemplate.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; title = json['title']; description = json['description']; isActive = json['isActive']; fileKey = json['fileKey']; fileUrl = json['fileUrl']; fileName = json['fileName']; fileSize = json['fileSize']; return this; } Map toJson() => { 'id': id, 'title': title, 'description': description, 'isActive': isActive, 'fileKey': fileKey, 'fileUrl': fileUrl, 'fileName': fileName, 'fileSize': fileSize }; getTypeName() => "DocumentTemplate"; TypeContext? context = _ctx; } class SearchDocumentTemplateResponse implements IResponseRequest, IConvertible { int? code; String? message; List? data; int? totalCount; SearchDocumentTemplateResponse({this.code,this.message,this.data,this.totalCount}); SearchDocumentTemplateResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { code = json['code']; message = json['message']; data = JsonConverters.fromJson(json['data'],'List',context!); totalCount = json['totalCount']; return this; } Map toJson() => { 'code': code, 'message': message, 'data': JsonConverters.toJson(data,'List',context!), 'totalCount': totalCount }; getTypeName() => "SearchDocumentTemplateResponse"; TypeContext? context = _ctx; } // @Route("/document-template/search", "GET") class SearchTemplateRequest extends PagingRequest implements IReturn, IConvertible, IGet { String? title; bool? isActive; SearchTemplateRequest({this.title,this.isActive}); SearchTemplateRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); title = json['title']; isActive = json['isActive']; return this; } Map toJson() => super.toJson()..addAll({ 'title': title, 'isActive': isActive }); createResponse() => SearchDocumentTemplateResponse(); getResponseTypeName() => "SearchDocumentTemplateResponse"; getTypeName() => "SearchTemplateRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'qlcn_api.vsmlab.vn', types: { 'PagingRequest': TypeInfo(TypeOf.Class, create:() => PagingRequest()), 'IResponseRequest': TypeInfo(TypeOf.Interface), 'DocumentTemplate': TypeInfo(TypeOf.Class, create:() => DocumentTemplate()), 'SearchDocumentTemplateResponse': TypeInfo(TypeOf.Class, create:() => SearchDocumentTemplateResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'SearchTemplateRequest': TypeInfo(TypeOf.Class, create:() => SearchTemplateRequest()), });