/* Options: Date: 2025-11-03 19:06:46 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bokamera.se //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: PaymentLogQuery.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; abstract class ICompany { String? CompanyId; } class BaseModel implements IConvertible { BaseModel(); BaseModel.fromJson(Map json) : super(); fromMap(Map json) { return this; } Map toJson() => {}; getTypeName() => "BaseModel"; TypeContext? context = _ctx; } class Currency extends BaseModel implements IConvertible { // @Required() String? Name; // @Required() String? CurrencySign; // @Required() bool? Active; DateTime? ModifiedDate; // @Required() String? Id; Currency({this.Name,this.CurrencySign,this.Active,this.ModifiedDate,this.Id}); Currency.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); Name = json['Name']; CurrencySign = json['CurrencySign']; Active = json['Active']; ModifiedDate = JsonConverters.fromJson(json['ModifiedDate'],'DateTime',context!); Id = json['Id']; return this; } Map toJson() => super.toJson()..addAll({ 'Name': Name, 'CurrencySign': CurrencySign, 'Active': Active, 'ModifiedDate': JsonConverters.toJson(ModifiedDate,'DateTime',context!), 'Id': Id }); getTypeName() => "Currency"; TypeContext? context = _ctx; } class PaymentLog extends BaseModel implements IConvertible { // @References(typeof(Currency)) String? CurrencyId; Currency? CurrencyInfo; // @Required() String? CompanyId; int? Id; // @Required() String? InternalReferenceId; // @Required() int? ArticleTypeId; String? PaymentReferenceId; int? PaymentProviderId; String? OrderItemReferenceId; double? Amount; double? VAT; double? AmountCredited; String? Comments; // @Required() DateTime? Created; // @Required() DateTime? Updated; DateTime? ModifiedDate; PaymentLog({this.CurrencyId,this.CurrencyInfo,this.CompanyId,this.Id,this.InternalReferenceId,this.ArticleTypeId,this.PaymentReferenceId,this.PaymentProviderId,this.OrderItemReferenceId,this.Amount,this.VAT,this.AmountCredited,this.Comments,this.Created,this.Updated,this.ModifiedDate}); PaymentLog.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); CurrencyId = json['CurrencyId']; CurrencyInfo = JsonConverters.fromJson(json['CurrencyInfo'],'Currency',context!); CompanyId = json['CompanyId']; Id = json['Id']; InternalReferenceId = json['InternalReferenceId']; ArticleTypeId = json['ArticleTypeId']; PaymentReferenceId = json['PaymentReferenceId']; PaymentProviderId = json['PaymentProviderId']; OrderItemReferenceId = json['OrderItemReferenceId']; Amount = JsonConverters.toDouble(json['Amount']); VAT = JsonConverters.toDouble(json['VAT']); AmountCredited = JsonConverters.toDouble(json['AmountCredited']); Comments = json['Comments']; Created = JsonConverters.fromJson(json['Created'],'DateTime',context!); Updated = JsonConverters.fromJson(json['Updated'],'DateTime',context!); ModifiedDate = JsonConverters.fromJson(json['ModifiedDate'],'DateTime',context!); return this; } Map toJson() => super.toJson()..addAll({ 'CurrencyId': CurrencyId, 'CurrencyInfo': JsonConverters.toJson(CurrencyInfo,'Currency',context!), 'CompanyId': CompanyId, 'Id': Id, 'InternalReferenceId': InternalReferenceId, 'ArticleTypeId': ArticleTypeId, 'PaymentReferenceId': PaymentReferenceId, 'PaymentProviderId': PaymentProviderId, 'OrderItemReferenceId': OrderItemReferenceId, 'Amount': Amount, 'VAT': VAT, 'AmountCredited': AmountCredited, 'Comments': Comments, 'Created': JsonConverters.toJson(Created,'DateTime',context!), 'Updated': JsonConverters.toJson(Updated,'DateTime',context!), 'ModifiedDate': JsonConverters.toJson(ModifiedDate,'DateTime',context!) }); getTypeName() => "PaymentLog"; TypeContext? context = _ctx; } class ArticleType extends BaseModel implements IConvertible { int? ArticleTypeId; // @Required() String? ArticleTypeName; String? ArticleTypeDescription; ArticleType({this.ArticleTypeId,this.ArticleTypeName,this.ArticleTypeDescription}); ArticleType.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); ArticleTypeId = json['ArticleTypeId']; ArticleTypeName = json['ArticleTypeName']; ArticleTypeDescription = json['ArticleTypeDescription']; return this; } Map toJson() => super.toJson()..addAll({ 'ArticleTypeId': ArticleTypeId, 'ArticleTypeName': ArticleTypeName, 'ArticleTypeDescription': ArticleTypeDescription }); getTypeName() => "ArticleType"; TypeContext? context = _ctx; } class CurrencyInfoResponse implements IConvertible { /** * The currency id */ // @ApiMember(Description="The currency id") String? Id; /** * The currency id */ // @ApiMember(Description="The currency id") String? Name; /** * The currency id */ // @ApiMember(Description="The currency id") String? CurrencySign; CurrencyInfoResponse({this.Id,this.Name,this.CurrencySign}); CurrencyInfoResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; Name = json['Name']; CurrencySign = json['CurrencySign']; return this; } Map toJson() => { 'Id': Id, 'Name': Name, 'CurrencySign': CurrencySign }; getTypeName() => "CurrencyInfoResponse"; TypeContext? context = _ctx; } class PaymentLogQueryResponse implements IConvertible { /** * The payment log id */ // @ApiMember(Description="The payment log id") int? Id; /** * The internal reference id, could be reference to a booking, rebate code, gift card etc. */ // @ApiMember(Description="The internal reference id, could be reference to a booking, rebate code, gift card etc.") int? InternalReference; /** * The payment reference id */ // @ApiMember(Description="The payment reference id") String? PaymentReferenceId; /** * The payment order item reference id */ // @ApiMember(Description="The payment order item reference id") String? OrderItemReferenceId; /** * The payment reference id */ // @ApiMember(Description="The payment reference id") int? PaymentProviderId; /** * The payment amount */ // @ApiMember(Description="The payment amount") double? Amount; /** * The article type */ // @ApiMember(Description="The article type") ArticleType? ArticleType; /** * The payment VAT in percent */ // @ApiMember(Description="The payment VAT in percent") double? VAT; /** * The payment amount that is credited */ // @ApiMember(Description="The payment amount that is credited") double? AmountCredited; /** * The payment currency id */ // @ApiMember(Description="The payment currency id") String? CurrencyId; /** * The payment currency info */ // @ApiMember(Description="The payment currency info") CurrencyInfoResponse? CurrencyInfo; /** * Comments that could be added to the event log item */ // @ApiMember(Description="Comments that could be added to the event log item") String? Comments; /** * The date when the payment items was created */ // @ApiMember(Description="The date when the payment items was created") DateTime? Created; /** * The date when the payment items were updated. */ // @ApiMember(Description="The date when the payment items were updated.") DateTime? Updated; PaymentLogQueryResponse({this.Id,this.InternalReference,this.PaymentReferenceId,this.OrderItemReferenceId,this.PaymentProviderId,this.Amount,this.ArticleType,this.VAT,this.AmountCredited,this.CurrencyId,this.CurrencyInfo,this.Comments,this.Created,this.Updated}); PaymentLogQueryResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; InternalReference = json['InternalReference']; PaymentReferenceId = json['PaymentReferenceId']; OrderItemReferenceId = json['OrderItemReferenceId']; PaymentProviderId = json['PaymentProviderId']; Amount = JsonConverters.toDouble(json['Amount']); ArticleType = JsonConverters.fromJson(json['ArticleType'],'ArticleType',context!); VAT = JsonConverters.toDouble(json['VAT']); AmountCredited = JsonConverters.toDouble(json['AmountCredited']); CurrencyId = json['CurrencyId']; CurrencyInfo = JsonConverters.fromJson(json['CurrencyInfo'],'CurrencyInfoResponse',context!); Comments = json['Comments']; Created = JsonConverters.fromJson(json['Created'],'DateTime',context!); Updated = JsonConverters.fromJson(json['Updated'],'DateTime',context!); return this; } Map toJson() => { 'Id': Id, 'InternalReference': InternalReference, 'PaymentReferenceId': PaymentReferenceId, 'OrderItemReferenceId': OrderItemReferenceId, 'PaymentProviderId': PaymentProviderId, 'Amount': Amount, 'ArticleType': JsonConverters.toJson(ArticleType,'ArticleType',context!), 'VAT': VAT, 'AmountCredited': AmountCredited, 'CurrencyId': CurrencyId, 'CurrencyInfo': JsonConverters.toJson(CurrencyInfo,'CurrencyInfoResponse',context!), 'Comments': Comments, 'Created': JsonConverters.toJson(Created,'DateTime',context!), 'Updated': JsonConverters.toJson(Updated,'DateTime',context!) }; getTypeName() => "PaymentLogQueryResponse"; TypeContext? context = _ctx; } // @Route("/articles/payments", "GET") // @ValidateRequest(Validator="IsAuthenticated") class PaymentLogQuery extends QueryDb2 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; /** * Start of interval to query for payments when they where created. UTC+0 and parameter as defined by date-time - RFC3339 */ // @ApiMember(DataType="dateTime", Description="Start of interval to query for payments when they where created. UTC+0 and parameter as defined by date-time - RFC3339", ParameterType="query") DateTime? CreatedFrom; /** * End of interval to query for payments when they where created. UTC+0 and parameter as defined by date-time - RFC3339 */ // @ApiMember(DataType="dateTime", Description="End of interval to query for payments when they where created. UTC+0 and parameter as defined by date-time - RFC3339", ParameterType="query") DateTime? CreatedTo; /** * Article type (Could be Service, rebate code types, etc.. */ // @ApiMember(Description="Article type (Could be Service, rebate code types, etc..", IsRequired=true) int? ArticleTypeId; /** * */ // @ApiMember(Description="") bool? IncludeArticleType; PaymentLogQuery({this.CompanyId,this.CreatedFrom,this.CreatedTo,this.ArticleTypeId,this.IncludeArticleType}); PaymentLogQuery.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); CompanyId = json['CompanyId']; CreatedFrom = JsonConverters.fromJson(json['CreatedFrom'],'DateTime',context!); CreatedTo = JsonConverters.fromJson(json['CreatedTo'],'DateTime',context!); ArticleTypeId = json['ArticleTypeId']; IncludeArticleType = json['IncludeArticleType']; return this; } Map toJson() => super.toJson()..addAll({ 'CompanyId': CompanyId, 'CreatedFrom': JsonConverters.toJson(CreatedFrom,'DateTime',context!), 'CreatedTo': JsonConverters.toJson(CreatedTo,'DateTime',context!), 'ArticleTypeId': ArticleTypeId, 'IncludeArticleType': IncludeArticleType }); createResponse() => QueryResponse(); getResponseTypeName() => "QueryResponse"; getTypeName() => "PaymentLogQuery"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.bokamera.se', types: { 'ICompany': TypeInfo(TypeOf.Interface), 'BaseModel': TypeInfo(TypeOf.Class, create:() => BaseModel()), 'Currency': TypeInfo(TypeOf.Class, create:() => Currency()), 'PaymentLog': TypeInfo(TypeOf.Class, create:() => PaymentLog()), 'ArticleType': TypeInfo(TypeOf.Class, create:() => ArticleType()), 'CurrencyInfoResponse': TypeInfo(TypeOf.Class, create:() => CurrencyInfoResponse()), 'PaymentLogQueryResponse': TypeInfo(TypeOf.Class, create:() => PaymentLogQueryResponse()), 'QueryResponse': TypeInfo(TypeOf.Class, create:() => QueryResponse()), 'PaymentLogQuery': TypeInfo(TypeOf.Class, create:() => PaymentLogQuery()), 'List': TypeInfo(TypeOf.Class, create:() => []), });