/* Options: Date: 2025-10-28 01:20:03 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://duengageapi.uat.scadsoftware.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: InitialisePaymentRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart,dart:collection */ import 'package:servicestack/servicestack.dart'; import 'dart:collection'; enum PaymentTypeEnum { OneTime, Recurring, } enum FrequencyEnum { Daily, Weekly, Monthly, Quarterly, Biannually, Annually, } class ResponseBase implements IConvertible { bool? Status; String? Message; Map?>? Errors; ResponseBase({this.Status,this.Message,this.Errors}); ResponseBase.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Status = json['Status']; Message = json['Message']; Errors = JsonConverters.fromJson(json['Errors'],'Map?>',context!); return this; } Map toJson() => { 'Status': Status, 'Message': Message, 'Errors': JsonConverters.toJson(Errors,'Map?>',context!) }; getTypeName() => "ResponseBase"; TypeContext? context = _ctx; } class InitialisePaymentResponse extends ResponseBase implements IConvertible { String? TransactionId; String? Signature; String? Url; InitialisePaymentResponse({this.TransactionId,this.Signature,this.Url}); InitialisePaymentResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); TransactionId = json['TransactionId']; Signature = json['Signature']; Url = json['Url']; return this; } Map toJson() => super.toJson()..addAll({ 'TransactionId': TransactionId, 'Signature': Signature, 'Url': Url }); getTypeName() => "InitialisePaymentResponse"; TypeContext? context = _ctx; } class InitialisePaymentRequest implements IReturn, IConvertible, IPost { PaymentTypeEnum? PaymentType; String? Uuid; String? ReferenceNumber; double? Amount; String? Currency; String? ItemName; String? ItemDescription; DateTime? BillingDate; FrequencyEnum? Frequency; int? Cycles; InitialisePaymentRequest({this.PaymentType,this.Uuid,this.ReferenceNumber,this.Amount,this.Currency,this.ItemName,this.ItemDescription,this.BillingDate,this.Frequency,this.Cycles}); InitialisePaymentRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { PaymentType = JsonConverters.fromJson(json['PaymentType'],'PaymentTypeEnum',context!); Uuid = json['Uuid']; ReferenceNumber = json['ReferenceNumber']; Amount = JsonConverters.toDouble(json['Amount']); Currency = json['Currency']; ItemName = json['ItemName']; ItemDescription = json['ItemDescription']; BillingDate = JsonConverters.fromJson(json['BillingDate'],'DateTime',context!); Frequency = JsonConverters.fromJson(json['Frequency'],'FrequencyEnum',context!); Cycles = json['Cycles']; return this; } Map toJson() => { 'PaymentType': JsonConverters.toJson(PaymentType,'PaymentTypeEnum',context!), 'Uuid': Uuid, 'ReferenceNumber': ReferenceNumber, 'Amount': Amount, 'Currency': Currency, 'ItemName': ItemName, 'ItemDescription': ItemDescription, 'BillingDate': JsonConverters.toJson(BillingDate,'DateTime',context!), 'Frequency': JsonConverters.toJson(Frequency,'FrequencyEnum',context!), 'Cycles': Cycles }; createResponse() => InitialisePaymentResponse(); getResponseTypeName() => "InitialisePaymentResponse"; getTypeName() => "InitialisePaymentRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'duengageapi.uat.scadsoftware.com', types: { 'PaymentTypeEnum': TypeInfo(TypeOf.Enum, enumValues:PaymentTypeEnum.values), 'FrequencyEnum': TypeInfo(TypeOf.Enum, enumValues:FrequencyEnum.values), 'ResponseBase': TypeInfo(TypeOf.Class, create:() => ResponseBase()), 'Map?>': TypeInfo(TypeOf.Class, create:() => Map?>()), 'InitialisePaymentResponse': TypeInfo(TypeOf.Class, create:() => InitialisePaymentResponse()), 'InitialisePaymentRequest': TypeInfo(TypeOf.Class, create:() => InitialisePaymentRequest()), });