Required permission: | CreatePayables |
POST | /Finance/CreatePayable/{vendor_id} |
---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class FinancePayableResponse implements IConvertible
{
String? cheque_id;
String? invoice_id;
String? batch_id;
String? transaction_batch_id;
double? total_amount;
double? unapplied_amount;
String? description;
String? vendor_id;
String? vendor_name;
String? doc_type;
bool? is_posted;
bool? is_paid;
bool? is_voided;
bool? is_reimbursed;
DateTime? doc_date;
DateTime? post_date;
DateTime? cheque_date;
DateTime? due_date;
ResponseStatus? responseStatus;
FinancePayableResponse({this.cheque_id,this.invoice_id,this.batch_id,this.transaction_batch_id,this.total_amount,this.unapplied_amount,this.description,this.vendor_id,this.vendor_name,this.doc_type,this.is_posted,this.is_paid,this.is_voided,this.is_reimbursed,this.doc_date,this.post_date,this.cheque_date,this.due_date,this.responseStatus});
FinancePayableResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
cheque_id = json['cheque_id'];
invoice_id = json['invoice_id'];
batch_id = json['batch_id'];
transaction_batch_id = json['transaction_batch_id'];
total_amount = JsonConverters.toDouble(json['total_amount']);
unapplied_amount = JsonConverters.toDouble(json['unapplied_amount']);
description = json['description'];
vendor_id = json['vendor_id'];
vendor_name = json['vendor_name'];
doc_type = json['doc_type'];
is_posted = json['is_posted'];
is_paid = json['is_paid'];
is_voided = json['is_voided'];
is_reimbursed = json['is_reimbursed'];
doc_date = JsonConverters.fromJson(json['doc_date'],'DateTime',context!);
post_date = JsonConverters.fromJson(json['post_date'],'DateTime',context!);
cheque_date = JsonConverters.fromJson(json['cheque_date'],'DateTime',context!);
due_date = JsonConverters.fromJson(json['due_date'],'DateTime',context!);
responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'cheque_id': cheque_id,
'invoice_id': invoice_id,
'batch_id': batch_id,
'transaction_batch_id': transaction_batch_id,
'total_amount': total_amount,
'unapplied_amount': unapplied_amount,
'description': description,
'vendor_id': vendor_id,
'vendor_name': vendor_name,
'doc_type': doc_type,
'is_posted': is_posted,
'is_paid': is_paid,
'is_voided': is_voided,
'is_reimbursed': is_reimbursed,
'doc_date': JsonConverters.toJson(doc_date,'DateTime',context!),
'post_date': JsonConverters.toJson(post_date,'DateTime',context!),
'cheque_date': JsonConverters.toJson(cheque_date,'DateTime',context!),
'due_date': JsonConverters.toJson(due_date,'DateTime',context!),
'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!)
};
getTypeName() => "FinancePayableResponse";
TypeContext? context = _ctx;
}
class FinanceCreatePayableDistributionRequest implements IConvertible
{
String? account;
double? amount;
String? description;
FinanceCreatePayableDistributionRequest({this.account,this.amount,this.description});
FinanceCreatePayableDistributionRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
account = json['account'];
amount = JsonConverters.toDouble(json['amount']);
description = json['description'];
return this;
}
Map<String, dynamic> toJson() => {
'account': account,
'amount': amount,
'description': description
};
getTypeName() => "FinanceCreatePayableDistributionRequest";
TypeContext? context = _ctx;
}
class FinanceCreatePayableRequest implements IConvertible
{
String? vendor_id;
double? total_amount;
double? tax_amount;
String? tax_schedule;
String? tax_account;
String? description;
String? batch_id;
bool? is_eft;
String? invoice_id;
String? chequebook;
DateTime? document_date;
DateTime? post_date;
List<FinanceCreatePayableDistributionRequest>? distributions;
FinanceCreatePayableRequest({this.vendor_id,this.total_amount,this.tax_amount,this.tax_schedule,this.tax_account,this.description,this.batch_id,this.is_eft,this.invoice_id,this.chequebook,this.document_date,this.post_date,this.distributions});
FinanceCreatePayableRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
vendor_id = json['vendor_id'];
total_amount = JsonConverters.toDouble(json['total_amount']);
tax_amount = JsonConverters.toDouble(json['tax_amount']);
tax_schedule = json['tax_schedule'];
tax_account = json['tax_account'];
description = json['description'];
batch_id = json['batch_id'];
is_eft = json['is_eft'];
invoice_id = json['invoice_id'];
chequebook = json['chequebook'];
document_date = JsonConverters.fromJson(json['document_date'],'DateTime',context!);
post_date = JsonConverters.fromJson(json['post_date'],'DateTime',context!);
distributions = JsonConverters.fromJson(json['distributions'],'List<FinanceCreatePayableDistributionRequest>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'vendor_id': vendor_id,
'total_amount': total_amount,
'tax_amount': tax_amount,
'tax_schedule': tax_schedule,
'tax_account': tax_account,
'description': description,
'batch_id': batch_id,
'is_eft': is_eft,
'invoice_id': invoice_id,
'chequebook': chequebook,
'document_date': JsonConverters.toJson(document_date,'DateTime',context!),
'post_date': JsonConverters.toJson(post_date,'DateTime',context!),
'distributions': JsonConverters.toJson(distributions,'List<FinanceCreatePayableDistributionRequest>',context!)
};
getTypeName() => "FinanceCreatePayableRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'data.regent_college.edu', types: <String, TypeInfo> {
'FinancePayableResponse': TypeInfo(TypeOf.Class, create:() => FinancePayableResponse()),
'FinanceCreatePayableDistributionRequest': TypeInfo(TypeOf.Class, create:() => FinanceCreatePayableDistributionRequest()),
'FinanceCreatePayableRequest': TypeInfo(TypeOf.Class, create:() => FinanceCreatePayableRequest()),
'List<FinanceCreatePayableDistributionRequest>': TypeInfo(TypeOf.Class, create:() => <FinanceCreatePayableDistributionRequest>[]),
});
Dart FinanceCreatePayableRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /Finance/CreatePayable/{vendor_id} HTTP/1.1
Host: data.regent-college.edu
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"vendor_id":"String","total_amount":0,"tax_amount":0,"tax_schedule":"String","tax_account":"String","description":"String","batch_id":"String","is_eft":false,"invoice_id":"String","chequebook":"String","document_date":"0001-01-01T00:00:00.0000000","post_date":"0001-01-01T00:00:00.0000000","distributions":[{"account":"String","amount":0,"description":"String"}]}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"cheque_id":"String","invoice_id":"String","batch_id":"String","transaction_batch_id":"String","total_amount":0,"unapplied_amount":0,"description":"String","vendor_id":"String","vendor_name":"String","doc_type":"String","is_posted":false,"is_paid":false,"is_voided":false,"is_reimbursed":false,"doc_date":"0001-01-01T00:00:00.0000000","post_date":"0001-01-01T00:00:00.0000000","cheque_date":"0001-01-01T00:00:00.0000000","due_date":"0001-01-01T00:00:00.0000000","responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}