/* Options: Date: 2026-10-01 10:22:40 Version: 6.10 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://stubbur-app.azurewebsites.net //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: RecurringPaymentListRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class RecurringPayment implements IConvertible { int? id; String? status; String? phoneVerificationNumber; String? deviceId; String? panLastFour; String? expYear; String? expMonth; String? token; int? monthlyPrice; int? subscriptionLength; int? monthsPaid; bool? chargeFirstMonth; // @References(typeof(EventOwner)) int? ownerId; int? ownerCardTypeId; // @StringLength(2147483647) String? jsonResponse; DateTime? startDate; DateTime? lastPayment; DateTime? nextPayment; String? paymentTokenId; int? declinedCounter; double? transactionFee; String? termsVersion; DateTime? termsAcceptedAt; String? currency; String? mode; String? lastDeclineReason; DateTime? lastDeclineDate; int? lastDunningStage; DateTime? lastDunningNotifiedAt; RecurringPayment({this.id,this.status,this.phoneVerificationNumber,this.deviceId,this.panLastFour,this.expYear,this.expMonth,this.token,this.monthlyPrice,this.subscriptionLength,this.monthsPaid,this.chargeFirstMonth,this.ownerId,this.ownerCardTypeId,this.jsonResponse,this.startDate,this.lastPayment,this.nextPayment,this.paymentTokenId,this.declinedCounter,this.transactionFee,this.termsVersion,this.termsAcceptedAt,this.currency,this.mode,this.lastDeclineReason,this.lastDeclineDate,this.lastDunningStage,this.lastDunningNotifiedAt}); RecurringPayment.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; status = json['status']; phoneVerificationNumber = json['phoneVerificationNumber']; deviceId = json['deviceId']; panLastFour = json['panLastFour']; expYear = json['expYear']; expMonth = json['expMonth']; token = json['token']; monthlyPrice = json['monthlyPrice']; subscriptionLength = json['subscriptionLength']; monthsPaid = json['monthsPaid']; chargeFirstMonth = json['chargeFirstMonth']; ownerId = json['ownerId']; ownerCardTypeId = json['ownerCardTypeId']; jsonResponse = json['jsonResponse']; startDate = JsonConverters.fromJson(json['startDate'],'DateTime',context!); lastPayment = JsonConverters.fromJson(json['lastPayment'],'DateTime',context!); nextPayment = JsonConverters.fromJson(json['nextPayment'],'DateTime',context!); paymentTokenId = json['paymentTokenId']; declinedCounter = json['declinedCounter']; transactionFee = JsonConverters.toDouble(json['transactionFee']); termsVersion = json['termsVersion']; termsAcceptedAt = JsonConverters.fromJson(json['termsAcceptedAt'],'DateTime',context!); currency = json['currency']; mode = json['mode']; lastDeclineReason = json['lastDeclineReason']; lastDeclineDate = JsonConverters.fromJson(json['lastDeclineDate'],'DateTime',context!); lastDunningStage = json['lastDunningStage']; lastDunningNotifiedAt = JsonConverters.fromJson(json['lastDunningNotifiedAt'],'DateTime',context!); return this; } Map toJson() => { 'id': id, 'status': status, 'phoneVerificationNumber': phoneVerificationNumber, 'deviceId': deviceId, 'panLastFour': panLastFour, 'expYear': expYear, 'expMonth': expMonth, 'token': token, 'monthlyPrice': monthlyPrice, 'subscriptionLength': subscriptionLength, 'monthsPaid': monthsPaid, 'chargeFirstMonth': chargeFirstMonth, 'ownerId': ownerId, 'ownerCardTypeId': ownerCardTypeId, 'jsonResponse': jsonResponse, 'startDate': JsonConverters.toJson(startDate,'DateTime',context!), 'lastPayment': JsonConverters.toJson(lastPayment,'DateTime',context!), 'nextPayment': JsonConverters.toJson(nextPayment,'DateTime',context!), 'paymentTokenId': paymentTokenId, 'declinedCounter': declinedCounter, 'transactionFee': transactionFee, 'termsVersion': termsVersion, 'termsAcceptedAt': JsonConverters.toJson(termsAcceptedAt,'DateTime',context!), 'currency': currency, 'mode': mode, 'lastDeclineReason': lastDeclineReason, 'lastDeclineDate': JsonConverters.toJson(lastDeclineDate,'DateTime',context!), 'lastDunningStage': lastDunningStage, 'lastDunningNotifiedAt': JsonConverters.toJson(lastDunningNotifiedAt,'DateTime',context!) }; getTypeName() => "RecurringPayment"; TypeContext? context = _ctx; } class RecurringPaymentListResult implements IConvertible { List? items; int? statusCode; String? message; RecurringPaymentListResult({this.items,this.statusCode,this.message}); RecurringPaymentListResult.fromJson(Map json) { fromMap(json); } fromMap(Map json) { items = JsonConverters.fromJson(json['items'],'List',context!); statusCode = json['statusCode']; message = json['message']; return this; } Map toJson() => { 'items': JsonConverters.toJson(items,'List',context!), 'statusCode': statusCode, 'message': message }; getTypeName() => "RecurringPaymentListResult"; TypeContext? context = _ctx; } // @Route("/recurringPayments", "GET") class RecurringPaymentListRequest implements IReturn, IConvertible { int? ownerId; String? status; String? phoneVerificationNumber; int? limit; RecurringPaymentListRequest({this.ownerId,this.status,this.phoneVerificationNumber,this.limit}); RecurringPaymentListRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ownerId = json['ownerId']; status = json['status']; phoneVerificationNumber = json['phoneVerificationNumber']; limit = json['limit']; return this; } Map toJson() => { 'ownerId': ownerId, 'status': status, 'phoneVerificationNumber': phoneVerificationNumber, 'limit': limit }; createResponse() => RecurringPaymentListResult(); getResponseTypeName() => "RecurringPaymentListResult"; getTypeName() => "RecurringPaymentListRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'stubbur_app.azurewebsites.net', types: { 'RecurringPayment': TypeInfo(TypeOf.Class, create:() => RecurringPayment()), 'RecurringPaymentListResult': TypeInfo(TypeOf.Class, create:() => RecurringPaymentListResult()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'RecurringPaymentListRequest': TypeInfo(TypeOf.Class, create:() => RecurringPaymentListRequest()), });