/* Options: Date: 2024-07-03 12:31:35 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bokamera.se //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: NewsletterCustomerQuery.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; abstract class ICompany { String? CompanyId; } class NewsletterCustomerInfo implements IConvertible { String? Id; String? Firstname; String? Lastname; String? Email; String? Phone; String? FacebookUserName; Uri? ImageUrl; NewsletterCustomerInfo({this.Id,this.Firstname,this.Lastname,this.Email,this.Phone,this.FacebookUserName,this.ImageUrl}); NewsletterCustomerInfo.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; Firstname = json['Firstname']; Lastname = json['Lastname']; Email = json['Email']; Phone = json['Phone']; FacebookUserName = json['FacebookUserName']; ImageUrl = JsonConverters.fromJson(json['ImageUrl'],'Uri',context!); return this; } Map toJson() => { 'Id': Id, 'Firstname': Firstname, 'Lastname': Lastname, 'Email': Email, 'Phone': Phone, 'FacebookUserName': FacebookUserName, 'ImageUrl': JsonConverters.toJson(ImageUrl,'Uri',context!) }; getTypeName() => "NewsletterCustomerInfo"; TypeContext? context = _ctx; } class NewsletterCustomerQueryResponse implements IConvertible { String? Id; NewsletterCustomerInfo? Customer; NewsletterCustomerQueryResponse({this.Id,this.Customer}); NewsletterCustomerQueryResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; Customer = JsonConverters.fromJson(json['Customer'],'NewsletterCustomerInfo',context!); return this; } Map toJson() => { 'Id': Id, 'Customer': JsonConverters.toJson(Customer,'NewsletterCustomerInfo',context!) }; getTypeName() => "NewsletterCustomerQueryResponse"; TypeContext? context = _ctx; } // @Route("/newsletter/customers", "GET") // @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) // @ValidateRequest(Validator="IsAuthenticated") class NewsletterCustomerQuery implements IReturn, ICompany, IConvertible, IGet { /** * The company id, if empty will use the company id for the user you are logged in with. */ // @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.") String? CompanyId; /** * Search for customer has done minimum number of bookings. */ // @ApiMember(Description="Search for customer has done minimum number of bookings.") int? CustomerMinBookings; /** * Search for customer has done maximum number of bookings. */ // @ApiMember(Description="Search for customer has done maximum number of bookings.") int? CustomerMaxBookings; /** * Search for customer has booked any of the service in the list (List contain service id's). */ // @ApiMember(Description="Search for customer has booked any of the service in the list (List contain service id's).") List? BookedServiceIds; /** * Search interval From datetime . */ // @ApiMember(Description="Search interval From datetime .") DateTime? From; /** * Search interval To datetime . */ // @ApiMember(Description="Search interval To datetime .") DateTime? To; /** * The max number of records you want to collect */ // @ApiMember(Description="The max number of records you want to collect") int? MaxRecords; /** * If you want to include the full customer information in the response */ // @ApiMember(Description="If you want to include the full customer information in the response") bool? IncludeCustomerInformation; NewsletterCustomerQuery({this.CompanyId,this.CustomerMinBookings,this.CustomerMaxBookings,this.BookedServiceIds,this.From,this.To,this.MaxRecords,this.IncludeCustomerInformation}); NewsletterCustomerQuery.fromJson(Map json) { fromMap(json); } fromMap(Map json) { CompanyId = json['CompanyId']; CustomerMinBookings = json['CustomerMinBookings']; CustomerMaxBookings = json['CustomerMaxBookings']; BookedServiceIds = JsonConverters.fromJson(json['BookedServiceIds'],'List',context!); From = JsonConverters.fromJson(json['From'],'DateTime',context!); To = JsonConverters.fromJson(json['To'],'DateTime',context!); MaxRecords = json['MaxRecords']; IncludeCustomerInformation = json['IncludeCustomerInformation']; return this; } Map toJson() => { 'CompanyId': CompanyId, 'CustomerMinBookings': CustomerMinBookings, 'CustomerMaxBookings': CustomerMaxBookings, 'BookedServiceIds': JsonConverters.toJson(BookedServiceIds,'List',context!), 'From': JsonConverters.toJson(From,'DateTime',context!), 'To': JsonConverters.toJson(To,'DateTime',context!), 'MaxRecords': MaxRecords, 'IncludeCustomerInformation': IncludeCustomerInformation }; createResponse() => NewsletterCustomerQueryResponse(); getResponseTypeName() => "NewsletterCustomerQueryResponse"; getTypeName() => "NewsletterCustomerQuery"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.bokamera.se', types: { 'ICompany': TypeInfo(TypeOf.Interface), 'NewsletterCustomerInfo': TypeInfo(TypeOf.Class, create:() => NewsletterCustomerInfo()), 'Uri': TypeInfo(TypeOf.Class, create:() => Uri()), 'NewsletterCustomerQueryResponse': TypeInfo(TypeOf.Class, create:() => NewsletterCustomerQueryResponse()), 'NewsletterCustomerQuery': TypeInfo(TypeOf.Class, create:() => NewsletterCustomerQuery()), });