/* Options: Date: 2025-12-06 09:25:02 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.dev.dynamics.trendsic.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CustomerPaymentsRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart,dart:typed_data */ import 'package:servicestack/servicestack.dart'; import 'dart:typed_data'; class Customer implements IConvertible { int? ID; String? CustomerCode; String? BusinessName; String? FirstName; String? LastName; String? Email; String? UID; int? AgentId; Customer({this.ID,this.CustomerCode,this.BusinessName,this.FirstName,this.LastName,this.Email,this.UID,this.AgentId}); Customer.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ID = json['ID']; CustomerCode = json['CustomerCode']; BusinessName = json['BusinessName']; FirstName = json['FirstName']; LastName = json['LastName']; Email = json['Email']; UID = json['UID']; AgentId = json['AgentId']; return this; } Map toJson() => { 'ID': ID, 'CustomerCode': CustomerCode, 'BusinessName': BusinessName, 'FirstName': FirstName, 'LastName': LastName, 'Email': Email, 'UID': UID, 'AgentId': AgentId }; getTypeName() => "Customer"; TypeContext? context = _ctx; } class PaymentInfo implements IConvertible { String? PaymentType; String? CardNumber; String? ExpDate; String? CCV; String? StripeToken; int? AgentId; PaymentInfo({this.PaymentType,this.CardNumber,this.ExpDate,this.CCV,this.StripeToken,this.AgentId}); PaymentInfo.fromJson(Map json) { fromMap(json); } fromMap(Map json) { PaymentType = json['PaymentType']; CardNumber = json['CardNumber']; ExpDate = json['ExpDate']; CCV = json['CCV']; StripeToken = json['StripeToken']; AgentId = json['AgentId']; return this; } Map toJson() => { 'PaymentType': PaymentType, 'CardNumber': CardNumber, 'ExpDate': ExpDate, 'CCV': CCV, 'StripeToken': StripeToken, 'AgentId': AgentId }; getTypeName() => "PaymentInfo"; TypeContext? context = _ctx; } class CustomerPayment implements IConvertible { int? ID; int? CustomerID; int? OrderHeaderID; String? Amount; bool? Approved; String? AuthCode; String? CardNumber; String? Message; int? ResponseCode; String? TransactionId; DateTime? TransactionDate; String? FullResponse; int? PaymentStatus; int? PaymentType; CustomerPayment({this.ID,this.CustomerID,this.OrderHeaderID,this.Amount,this.Approved,this.AuthCode,this.CardNumber,this.Message,this.ResponseCode,this.TransactionId,this.TransactionDate,this.FullResponse,this.PaymentStatus,this.PaymentType}); CustomerPayment.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ID = json['ID']; CustomerID = json['CustomerID']; OrderHeaderID = json['OrderHeaderID']; Amount = json['Amount']; Approved = json['Approved']; AuthCode = json['AuthCode']; CardNumber = json['CardNumber']; Message = json['Message']; ResponseCode = json['ResponseCode']; TransactionId = json['TransactionId']; TransactionDate = JsonConverters.fromJson(json['TransactionDate'],'DateTime',context!); FullResponse = json['FullResponse']; PaymentStatus = json['PaymentStatus']; PaymentType = json['PaymentType']; return this; } Map toJson() => { 'ID': ID, 'CustomerID': CustomerID, 'OrderHeaderID': OrderHeaderID, 'Amount': Amount, 'Approved': Approved, 'AuthCode': AuthCode, 'CardNumber': CardNumber, 'Message': Message, 'ResponseCode': ResponseCode, 'TransactionId': TransactionId, 'TransactionDate': JsonConverters.toJson(TransactionDate,'DateTime',context!), 'FullResponse': FullResponse, 'PaymentStatus': PaymentStatus, 'PaymentType': PaymentType }; getTypeName() => "CustomerPayment"; TypeContext? context = _ctx; } class CustomerPaymentsResponse implements IConvertible { ResponseStatus? ResponseStatus; bool? PaymentIntentSuccess; bool? PaymentSuccess; bool? SubscriptionSuccess; String? Message; String? ReceiptUrl; String? AgentNumber; String? ClientSecret; CustomerPayment? CustomerPayment; String? PublicOrderID; CustomerPaymentsResponse({this.ResponseStatus,this.PaymentIntentSuccess,this.PaymentSuccess,this.SubscriptionSuccess,this.Message,this.ReceiptUrl,this.AgentNumber,this.ClientSecret,this.CustomerPayment,this.PublicOrderID}); CustomerPaymentsResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); PaymentIntentSuccess = json['PaymentIntentSuccess']; PaymentSuccess = json['PaymentSuccess']; SubscriptionSuccess = json['SubscriptionSuccess']; Message = json['Message']; ReceiptUrl = json['ReceiptUrl']; AgentNumber = json['AgentNumber']; ClientSecret = json['ClientSecret']; CustomerPayment = JsonConverters.fromJson(json['CustomerPayment'],'CustomerPayment',context!); PublicOrderID = json['PublicOrderID']; return this; } Map toJson() => { 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!), 'PaymentIntentSuccess': PaymentIntentSuccess, 'PaymentSuccess': PaymentSuccess, 'SubscriptionSuccess': SubscriptionSuccess, 'Message': Message, 'ReceiptUrl': ReceiptUrl, 'AgentNumber': AgentNumber, 'ClientSecret': ClientSecret, 'CustomerPayment': JsonConverters.toJson(CustomerPayment,'CustomerPayment',context!), 'PublicOrderID': PublicOrderID }; getTypeName() => "CustomerPaymentsResponse"; TypeContext? context = _ctx; } // @Route("/v1/CustomerPayments", "POST,PUT,OPTIONS") // @Route("/v1/CustomerPayments/{OrderID}", "GET") class CustomerPaymentsRequest implements IReturn, IConvertible, IGet { Customer? Customer; String? OrderID; PaymentInfo? PaymentInfo; CustomerPaymentsRequest({this.Customer,this.OrderID,this.PaymentInfo}); CustomerPaymentsRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Customer = JsonConverters.fromJson(json['Customer'],'Customer',context!); OrderID = json['OrderID']; PaymentInfo = JsonConverters.fromJson(json['PaymentInfo'],'PaymentInfo',context!); return this; } Map toJson() => { 'Customer': JsonConverters.toJson(Customer,'Customer',context!), 'OrderID': OrderID, 'PaymentInfo': JsonConverters.toJson(PaymentInfo,'PaymentInfo',context!) }; createResponse() => CustomerPaymentsResponse(); getResponseTypeName() => "CustomerPaymentsResponse"; getTypeName() => "CustomerPaymentsRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: { 'Customer': TypeInfo(TypeOf.Class, create:() => Customer()), 'PaymentInfo': TypeInfo(TypeOf.Class, create:() => PaymentInfo()), 'CustomerPayment': TypeInfo(TypeOf.Class, create:() => CustomerPayment()), 'CustomerPaymentsResponse': TypeInfo(TypeOf.Class, create:() => CustomerPaymentsResponse()), 'CustomerPaymentsRequest': TypeInfo(TypeOf.Class, create:() => CustomerPaymentsRequest()), });