| POST | /api/Financial/ExchangeRateBase |
|---|
import 'package:servicestack/servicestack.dart';
class ExchangeRate implements ILazyLoadMemoryCacheValue, IConvertible
{
String? BaseCurrency;
String? ForeignCurrency;
double? Rate;
DateTime? TimeStamp;
bool? FromCache;
ExchangeRate({this.BaseCurrency,this.ForeignCurrency,this.Rate,this.TimeStamp,this.FromCache});
ExchangeRate.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
BaseCurrency = json['BaseCurrency'];
ForeignCurrency = json['ForeignCurrency'];
Rate = JsonConverters.toDouble(json['Rate']);
TimeStamp = JsonConverters.fromJson(json['TimeStamp'],'DateTime',context!);
FromCache = json['FromCache'];
return this;
}
Map<String, dynamic> toJson() => {
'BaseCurrency': BaseCurrency,
'ForeignCurrency': ForeignCurrency,
'Rate': Rate,
'TimeStamp': JsonConverters.toJson(TimeStamp,'DateTime',context!),
'FromCache': FromCache
};
getTypeName() => "ExchangeRate";
TypeContext? context = _ctx;
}
class ExchangeRateBase implements IConvertible
{
ExchangeRate? ExchangeRate;
double? BaseAmount;
ExchangeRateBase({this.ExchangeRate,this.BaseAmount});
ExchangeRateBase.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ExchangeRate = JsonConverters.fromJson(json['ExchangeRate'],'ExchangeRate',context!);
BaseAmount = JsonConverters.toDouble(json['BaseAmount']);
return this;
}
Map<String, dynamic> toJson() => {
'ExchangeRate': JsonConverters.toJson(ExchangeRate,'ExchangeRate',context!),
'BaseAmount': BaseAmount
};
getTypeName() => "ExchangeRateBase";
TypeContext? context = _ctx;
}
class ExchangeRateBaseParams extends ExchangeRateBaseParams implements IConvertible
{
ExchangeRateBaseParams();
ExchangeRateBaseParams.fromJson(Map<String, dynamic> json) : super.fromJson(json);
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
return this;
}
Map<String, dynamic> toJson() => super.toJson();
getTypeName() => "ExchangeRateBaseParams";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'devapi.billhighway.com', types: <String, TypeInfo> {
'ExchangeRate': TypeInfo(TypeOf.Class, create:() => ExchangeRate()),
'ExchangeRateBase': TypeInfo(TypeOf.Class, create:() => ExchangeRateBase()),
'ExchangeRateBaseParams': TypeInfo(TypeOf.Class, create:() => ExchangeRateBaseParams()),
});
Dart ExchangeRateBaseParams 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 /api/Financial/ExchangeRateBase HTTP/1.1
Host: devapi.billhighway.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
ProcessingCurrency: String,
AmountDue: 0,
BaseCurrency: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
ExchangeRate:
{
BaseCurrency: String,
ForeignCurrency: String,
Rate: 0,
TimeStamp: 0001-01-01,
FromCache: False
},
BaseAmount: 0
}