/* Options: Date: 2026-10-01 10:23:01 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: RecurringPaymentGetRequest.* //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 RecurringPaymentGetResult implements IConvertible { RecurringPayment? item; bool? alreadyExisted; int? statusCode; String? message; RecurringPaymentGetResult({this.item,this.alreadyExisted,this.statusCode,this.message}); RecurringPaymentGetResult.fromJson(Map json) { fromMap(json); } fromMap(Map json) { item = JsonConverters.fromJson(json['item'],'RecurringPayment',context!); alreadyExisted = json['alreadyExisted']; statusCode = json['statusCode']; message = json['message']; return this; } Map toJson() => { 'item': JsonConverters.toJson(item,'RecurringPayment',context!), 'alreadyExisted': alreadyExisted, 'statusCode': statusCode, 'message': message }; getTypeName() => "RecurringPaymentGetResult"; TypeContext? context = _ctx; } // @Route("/recurringPayments/{Id}", "GET") class RecurringPaymentGetRequest implements IReturn, IConvertible { int? id; RecurringPaymentGetRequest({this.id}); RecurringPaymentGetRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; return this; } Map toJson() => { 'id': id }; createResponse() => RecurringPaymentGetResult(); getResponseTypeName() => "RecurringPaymentGetResult"; getTypeName() => "RecurringPaymentGetRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'stubbur_app.azurewebsites.net', types: { 'RecurringPayment': TypeInfo(TypeOf.Class, create:() => RecurringPayment()), 'RecurringPaymentGetResult': TypeInfo(TypeOf.Class, create:() => RecurringPaymentGetResult()), 'RecurringPaymentGetRequest': TypeInfo(TypeOf.Class, create:() => RecurringPaymentGetRequest()), });