/* Options: Date: 2026-04-01 02:33:21 Version: 10.05 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bokamera.se //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: QuerySummarizedInvoices.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; abstract class ICompany { String? CompanyId; } enum SummarizedInvoiceStatus { Pending, Processing, Completed, Failed, } class SummarizedInvoiceDetailResponse implements IConvertible { String Id = ""; String CompanyId = ""; String CustomerId = ""; String CustomerName = ""; String? EAccountingInvoiceId; bool Draft; DateTime DateFrom = DateTime(0); DateTime DateTo = DateTime(0); int? ServiceId; int Status = 0; String StatusName = ""; String? ErrorMessage; List BookingIds = []; DateTime CreatedDate = DateTime(0); DateTime UpdatedDate = DateTime(0); SummarizedInvoiceDetailResponse({this.Id,this.CompanyId,this.CustomerId,this.CustomerName,this.EAccountingInvoiceId,this.Draft,this.DateFrom,this.DateTo,this.ServiceId,this.Status,this.StatusName,this.ErrorMessage,this.BookingIds,this.CreatedDate,this.UpdatedDate}); SummarizedInvoiceDetailResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; CompanyId = json['CompanyId']; CustomerId = json['CustomerId']; CustomerName = json['CustomerName']; EAccountingInvoiceId = json['EAccountingInvoiceId']; Draft = json['Draft']; DateFrom = JsonConverters.fromJson(json['DateFrom'],'DateTime',context!); DateTo = JsonConverters.fromJson(json['DateTo'],'DateTime',context!); ServiceId = json['ServiceId']; Status = json['Status']; StatusName = json['StatusName']; ErrorMessage = json['ErrorMessage']; BookingIds = JsonConverters.fromJson(json['BookingIds'],'List',context!); CreatedDate = JsonConverters.fromJson(json['CreatedDate'],'DateTime',context!); UpdatedDate = JsonConverters.fromJson(json['UpdatedDate'],'DateTime',context!); return this; } Map toJson() => { 'Id': Id, 'CompanyId': CompanyId, 'CustomerId': CustomerId, 'CustomerName': CustomerName, 'EAccountingInvoiceId': EAccountingInvoiceId, 'Draft': Draft, 'DateFrom': JsonConverters.toJson(DateFrom,'DateTime',context!), 'DateTo': JsonConverters.toJson(DateTo,'DateTime',context!), 'ServiceId': ServiceId, 'Status': Status, 'StatusName': StatusName, 'ErrorMessage': ErrorMessage, 'BookingIds': JsonConverters.toJson(BookingIds,'List',context!), 'CreatedDate': JsonConverters.toJson(CreatedDate,'DateTime',context!), 'UpdatedDate': JsonConverters.toJson(UpdatedDate,'DateTime',context!) }; getTypeName() => "SummarizedInvoiceDetailResponse"; TypeContext? context = _ctx; } class QuerySummarizedInvoicesResponse implements IConvertible { List Results = []; ResponseStatus ResponseStatus; QuerySummarizedInvoicesResponse({this.Results,this.ResponseStatus}); QuerySummarizedInvoicesResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Results = JsonConverters.fromJson(json['Results'],'List',context!); ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); return this; } Map toJson() => { 'Results': JsonConverters.toJson(Results,'List',context!), 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!) }; getTypeName() => "QuerySummarizedInvoicesResponse"; TypeContext? context = _ctx; } // @Route("/eaccounting/summarizedinvoices", "GET") // @ValidateRequest(Validator="IsAuthenticated") class QuerySummarizedInvoices 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; /** * Filter by customer id. */ // @ApiMember(Description="Filter by customer id.") String? CustomerId; /** * Filter by date from. */ // @ApiMember(Description="Filter by date from.") DateTime? DateFrom; /** * Filter by date to. */ // @ApiMember(Description="Filter by date to.") DateTime? DateTo; /** * Filter by status (0=Pending, 1=Processing, 2=Completed, 3=Failed). */ // @ApiMember(Description="Filter by status (0=Pending, 1=Processing, 2=Completed, 3=Failed).") SummarizedInvoiceStatus? Status; QuerySummarizedInvoices({this.CompanyId,this.CustomerId,this.DateFrom,this.DateTo,this.Status}); QuerySummarizedInvoices.fromJson(Map json) { fromMap(json); } fromMap(Map json) { CompanyId = json['CompanyId']; CustomerId = json['CustomerId']; DateFrom = JsonConverters.fromJson(json['DateFrom'],'DateTime',context!); DateTo = JsonConverters.fromJson(json['DateTo'],'DateTime',context!); Status = JsonConverters.fromJson(json['Status'],'SummarizedInvoiceStatus',context!); return this; } Map toJson() => { 'CompanyId': CompanyId, 'CustomerId': CustomerId, 'DateFrom': JsonConverters.toJson(DateFrom,'DateTime',context!), 'DateTo': JsonConverters.toJson(DateTo,'DateTime',context!), 'Status': JsonConverters.toJson(Status,'SummarizedInvoiceStatus',context!) }; createResponse() => QuerySummarizedInvoicesResponse(); getResponseTypeName() => "QuerySummarizedInvoicesResponse"; getTypeName() => "QuerySummarizedInvoices"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.bokamera.se', types: { 'ICompany': TypeInfo(TypeOf.Interface), 'SummarizedInvoiceStatus': TypeInfo(TypeOf.Enum, enumValues:SummarizedInvoiceStatus.values), 'SummarizedInvoiceDetailResponse': TypeInfo(TypeOf.Class, create:() => SummarizedInvoiceDetailResponse()), 'QuerySummarizedInvoicesResponse': TypeInfo(TypeOf.Class, create:() => QuerySummarizedInvoicesResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'QuerySummarizedInvoices': TypeInfo(TypeOf.Class, create:() => QuerySummarizedInvoices()), });