/* Options: Date: 2026-10-01 10:23:10 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: MyRecurringPaymentsRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class RecurringSubscriptionView implements IConvertible { int? id; String? status; String? phoneVerificationNumber; DateTime? startDate; DateTime? lastPayment; DateTime? nextPayment; int? ownerId; int? ownerCardTypeId; int? declinedCounter; int? subscriptionLength; int? monthsPaid; int? monthlyPrice; double? transactionFee; String? paymentTokenId; String? panLastFour; String? expMonth; String? expYear; String? mode; int? cardId; String? initialPaymentDate; String? initialPaymentAmount; String? initialPaymentCurrency; String? initialPaymentStatus; DateTime? cancelledAt; String? cancellationReason; int? priorSubscriptionLength; String? termsVersion; DateTime? termsAcceptedAt; RecurringSubscriptionView({this.id,this.status,this.phoneVerificationNumber,this.startDate,this.lastPayment,this.nextPayment,this.ownerId,this.ownerCardTypeId,this.declinedCounter,this.subscriptionLength,this.monthsPaid,this.monthlyPrice,this.transactionFee,this.paymentTokenId,this.panLastFour,this.expMonth,this.expYear,this.mode,this.cardId,this.initialPaymentDate,this.initialPaymentAmount,this.initialPaymentCurrency,this.initialPaymentStatus,this.cancelledAt,this.cancellationReason,this.priorSubscriptionLength,this.termsVersion,this.termsAcceptedAt}); RecurringSubscriptionView.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; status = json['status']; phoneVerificationNumber = json['phoneVerificationNumber']; startDate = JsonConverters.fromJson(json['startDate'],'DateTime',context!); lastPayment = JsonConverters.fromJson(json['lastPayment'],'DateTime',context!); nextPayment = JsonConverters.fromJson(json['nextPayment'],'DateTime',context!); ownerId = json['ownerId']; ownerCardTypeId = json['ownerCardTypeId']; declinedCounter = json['declinedCounter']; subscriptionLength = json['subscriptionLength']; monthsPaid = json['monthsPaid']; monthlyPrice = json['monthlyPrice']; transactionFee = JsonConverters.toDouble(json['transactionFee']); paymentTokenId = json['paymentTokenId']; panLastFour = json['panLastFour']; expMonth = json['expMonth']; expYear = json['expYear']; mode = json['mode']; cardId = json['cardId']; initialPaymentDate = json['initialPaymentDate']; initialPaymentAmount = json['initialPaymentAmount']; initialPaymentCurrency = json['initialPaymentCurrency']; initialPaymentStatus = json['initialPaymentStatus']; cancelledAt = JsonConverters.fromJson(json['cancelledAt'],'DateTime',context!); cancellationReason = json['cancellationReason']; priorSubscriptionLength = json['priorSubscriptionLength']; termsVersion = json['termsVersion']; termsAcceptedAt = JsonConverters.fromJson(json['termsAcceptedAt'],'DateTime',context!); return this; } Map toJson() => { 'id': id, 'status': status, 'phoneVerificationNumber': phoneVerificationNumber, 'startDate': JsonConverters.toJson(startDate,'DateTime',context!), 'lastPayment': JsonConverters.toJson(lastPayment,'DateTime',context!), 'nextPayment': JsonConverters.toJson(nextPayment,'DateTime',context!), 'ownerId': ownerId, 'ownerCardTypeId': ownerCardTypeId, 'declinedCounter': declinedCounter, 'subscriptionLength': subscriptionLength, 'monthsPaid': monthsPaid, 'monthlyPrice': monthlyPrice, 'transactionFee': transactionFee, 'paymentTokenId': paymentTokenId, 'panLastFour': panLastFour, 'expMonth': expMonth, 'expYear': expYear, 'mode': mode, 'cardId': cardId, 'initialPaymentDate': initialPaymentDate, 'initialPaymentAmount': initialPaymentAmount, 'initialPaymentCurrency': initialPaymentCurrency, 'initialPaymentStatus': initialPaymentStatus, 'cancelledAt': JsonConverters.toJson(cancelledAt,'DateTime',context!), 'cancellationReason': cancellationReason, 'priorSubscriptionLength': priorSubscriptionLength, 'termsVersion': termsVersion, 'termsAcceptedAt': JsonConverters.toJson(termsAcceptedAt,'DateTime',context!) }; getTypeName() => "RecurringSubscriptionView"; TypeContext? context = _ctx; } class MyRecurringPaymentsResult implements IConvertible { List? items; int? statusCode; String? message; MyRecurringPaymentsResult({this.items,this.statusCode,this.message}); MyRecurringPaymentsResult.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() => "MyRecurringPaymentsResult"; TypeContext? context = _ctx; } // @Route("/recurringPayments/mine", "GET") class MyRecurringPaymentsRequest implements IReturn, IConvertible { String? phone; MyRecurringPaymentsRequest({this.phone}); MyRecurringPaymentsRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { phone = json['phone']; return this; } Map toJson() => { 'phone': phone }; createResponse() => MyRecurringPaymentsResult(); getResponseTypeName() => "MyRecurringPaymentsResult"; getTypeName() => "MyRecurringPaymentsRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'stubbur_app.azurewebsites.net', types: { 'RecurringSubscriptionView': TypeInfo(TypeOf.Class, create:() => RecurringSubscriptionView()), 'MyRecurringPaymentsResult': TypeInfo(TypeOf.Class, create:() => MyRecurringPaymentsResult()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'MyRecurringPaymentsRequest': TypeInfo(TypeOf.Class, create:() => MyRecurringPaymentsRequest()), });