| Requires any of the roles: | Admin, TeamAdmin | Required permission: | Tickets.Add |
| POST | /donations/payout/manual |
|---|
import 'package:servicestack/servicestack.dart';
class DonationPayoutRow implements IConvertible
{
int? id;
int? donationId;
int? ownerId;
int? ownerCardId;
String? paymentMethodId;
String? paymentReference;
double? amount;
double? txnPercent;
double? payoutAmount;
String? markPaidReference;
String? source;
String? note;
DateTime? createdUTC;
String? createdBy;
DateTime? donationPaidUTC;
DonationPayoutRow({this.id,this.donationId,this.ownerId,this.ownerCardId,this.paymentMethodId,this.paymentReference,this.amount,this.txnPercent,this.payoutAmount,this.markPaidReference,this.source,this.note,this.createdUTC,this.createdBy,this.donationPaidUTC});
DonationPayoutRow.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
donationId = json['donationId'];
ownerId = json['ownerId'];
ownerCardId = json['ownerCardId'];
paymentMethodId = json['paymentMethodId'];
paymentReference = json['paymentReference'];
amount = JsonConverters.toDouble(json['amount']);
txnPercent = JsonConverters.toDouble(json['txnPercent']);
payoutAmount = JsonConverters.toDouble(json['payoutAmount']);
markPaidReference = json['markPaidReference'];
source = json['source'];
note = json['note'];
createdUTC = JsonConverters.fromJson(json['createdUTC'],'DateTime',context!);
createdBy = json['createdBy'];
donationPaidUTC = JsonConverters.fromJson(json['donationPaidUTC'],'DateTime',context!);
return this;
}
Map<String, dynamic> toJson() => {
'id': id,
'donationId': donationId,
'ownerId': ownerId,
'ownerCardId': ownerCardId,
'paymentMethodId': paymentMethodId,
'paymentReference': paymentReference,
'amount': amount,
'txnPercent': txnPercent,
'payoutAmount': payoutAmount,
'markPaidReference': markPaidReference,
'source': source,
'note': note,
'createdUTC': JsonConverters.toJson(createdUTC,'DateTime',context!),
'createdBy': createdBy,
'donationPaidUTC': JsonConverters.toJson(donationPaidUTC,'DateTime',context!)
};
getTypeName() => "DonationPayoutRow";
TypeContext? context = _ctx;
}
class DonationPayoutBatchResult implements IConvertible
{
List<DonationPayoutRow>? rows;
int? count;
int? donationAmount;
double? payoutAmount;
int? payoutAmountIsk;
int? alreadyPaidCount;
bool? replayed;
String? markPaidReference;
int? ownerId;
int? statusCode;
String? message;
DonationPayoutBatchResult({this.rows,this.count,this.donationAmount,this.payoutAmount,this.payoutAmountIsk,this.alreadyPaidCount,this.replayed,this.markPaidReference,this.ownerId,this.statusCode,this.message});
DonationPayoutBatchResult.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
rows = JsonConverters.fromJson(json['rows'],'List<DonationPayoutRow>',context!);
count = json['count'];
donationAmount = json['donationAmount'];
payoutAmount = JsonConverters.toDouble(json['payoutAmount']);
payoutAmountIsk = json['payoutAmountIsk'];
alreadyPaidCount = json['alreadyPaidCount'];
replayed = json['replayed'];
markPaidReference = json['markPaidReference'];
ownerId = json['ownerId'];
statusCode = json['statusCode'];
message = json['message'];
return this;
}
Map<String, dynamic> toJson() => {
'rows': JsonConverters.toJson(rows,'List<DonationPayoutRow>',context!),
'count': count,
'donationAmount': donationAmount,
'payoutAmount': payoutAmount,
'payoutAmountIsk': payoutAmountIsk,
'alreadyPaidCount': alreadyPaidCount,
'replayed': replayed,
'markPaidReference': markPaidReference,
'ownerId': ownerId,
'statusCode': statusCode,
'message': message
};
getTypeName() => "DonationPayoutBatchResult";
TypeContext? context = _ctx;
}
class DonationPayoutManualRequest implements IConvertible
{
int? donationId;
double? payoutAmount;
double? txnPercent;
String? markPaidReference;
String? note;
String? createdBy;
DonationPayoutManualRequest({this.donationId,this.payoutAmount,this.txnPercent,this.markPaidReference,this.note,this.createdBy});
DonationPayoutManualRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
donationId = json['donationId'];
payoutAmount = JsonConverters.toDouble(json['payoutAmount']);
txnPercent = JsonConverters.toDouble(json['txnPercent']);
markPaidReference = json['markPaidReference'];
note = json['note'];
createdBy = json['createdBy'];
return this;
}
Map<String, dynamic> toJson() => {
'donationId': donationId,
'payoutAmount': payoutAmount,
'txnPercent': txnPercent,
'markPaidReference': markPaidReference,
'note': note,
'createdBy': createdBy
};
getTypeName() => "DonationPayoutManualRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'stubbur_app.azurewebsites.net', types: <String, TypeInfo> {
'DonationPayoutRow': TypeInfo(TypeOf.Class, create:() => DonationPayoutRow()),
'DonationPayoutBatchResult': TypeInfo(TypeOf.Class, create:() => DonationPayoutBatchResult()),
'List<DonationPayoutRow>': TypeInfo(TypeOf.Class, create:() => <DonationPayoutRow>[]),
'DonationPayoutManualRequest': TypeInfo(TypeOf.Class, create:() => DonationPayoutManualRequest()),
});
Dart DonationPayoutManualRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /donations/payout/manual HTTP/1.1
Host: stubbur-app.azurewebsites.net
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
donationId: 0,
payoutAmount: 0,
txnPercent: 0,
markPaidReference: String,
note: String,
createdBy: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
rows:
[
{
id: 0,
donationId: 0,
ownerId: 0,
ownerCardId: 0,
paymentMethodId: String,
paymentReference: String,
amount: 0,
txnPercent: 0,
payoutAmount: 0,
markPaidReference: String,
source: String,
note: String,
createdUTC: 0001-01-01,
createdBy: String,
donationPaidUTC: 0001-01-01
}
],
count: 0,
donationAmount: 0,
payoutAmount: 0,
payoutAmountIsk: 0,
alreadyPaidCount: 0,
replayed: False,
markPaidReference: String,
ownerId: 0,
statusCode: 0,
message: String
}