/* Options: Date: 2026-03-06 08:32:29 Version: 6.110 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://etc-api.vsmlab.vn //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: SearchProviderRequest.* //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; } class Provider implements IConvertible { int? id; String? name; String? taxCode; String? address; String? email; String? additionalInfo; int? providerType; DateTime? createdAt; int? createdBy; Provider({this.id,this.name,this.taxCode,this.address,this.email,this.additionalInfo,this.providerType,this.createdAt,this.createdBy}); Provider.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; name = json['name']; taxCode = json['taxCode']; address = json['address']; email = json['email']; additionalInfo = json['additionalInfo']; providerType = json['providerType']; createdAt = JsonConverters.fromJson(json['createdAt'],'DateTime',context!); createdBy = json['createdBy']; return this; } Map toJson() => { 'id': id, 'name': name, 'taxCode': taxCode, 'address': address, 'email': email, 'additionalInfo': additionalInfo, 'providerType': providerType, 'createdAt': JsonConverters.toJson(createdAt,'DateTime',context!), 'createdBy': createdBy }; getTypeName() => "Provider"; TypeContext? context = _ctx; } class PageResponse implements IResponseRequest, IConvertible { int? code; String? message; List? data; Pagination? pagination; PageResponse({this.code,this.message,this.data,this.pagination}); PageResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { code = json['code']; message = json['message']; data = JsonConverters.fromJson(json['data'],'List<${runtimeGenericTypeDefs(this,[0]).join(",")}>',context!); pagination = JsonConverters.fromJson(json['pagination'],'Pagination',context!); return this; } Map toJson() => { 'code': code, 'message': message, 'data': JsonConverters.toJson(data,'List',context!), 'pagination': JsonConverters.toJson(pagination,'Pagination',context!) }; getTypeName() => "PageResponse<$Provider>"; TypeContext? context = _ctx; } // @Route("/provider/search", "GET") class SearchProviderRequest extends PagingRequest implements IReturn>, IConvertible, IGet { String? name; int? providerType; SearchProviderRequest({this.name,this.providerType}); SearchProviderRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); name = json['name']; providerType = json['providerType']; return this; } Map toJson() => super.toJson()..addAll({ 'name': name, 'providerType': providerType }); createResponse() => PageResponse(); getResponseTypeName() => "PageResponse"; getTypeName() => "SearchProviderRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'etc_api.vsmlab.vn', types: { 'PagingRequest': TypeInfo(TypeOf.Class, create:() => PagingRequest()), 'Provider': TypeInfo(TypeOf.Class, create:() => Provider()), 'PageResponse': TypeInfo(TypeOf.Class, create:() => PageResponse()), 'Pagination': TypeInfo(TypeOf.Class, create:() => Pagination()), 'SearchProviderRequest': TypeInfo(TypeOf.Class, create:() => SearchProviderRequest()), });