GET | /api/purchaseorders | Search for PurchaseOrders |
---|
import 'package:servicestack/servicestack.dart';
class PurchaseOrderItem implements IConvertible
{
int? id;
// @References(typeof(PurchaseOrder))
int? purchaseOrderId;
// @References(typeof(Product))
String? productId;
String? productName;
int? quantity;
double? price;
String? discountDescription;
String? discountSource;
double? discount;
DateTime? createdDate;
PurchaseOrderItem({this.id,this.purchaseOrderId,this.productId,this.productName,this.quantity,this.price,this.discountDescription,this.discountSource,this.discount,this.createdDate});
PurchaseOrderItem.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
purchaseOrderId = json['purchaseOrderId'];
productId = json['productId'];
productName = json['productName'];
quantity = json['quantity'];
price = JsonConverters.toDouble(json['price']);
discountDescription = json['discountDescription'];
discountSource = json['discountSource'];
discount = JsonConverters.toDouble(json['discount']);
createdDate = JsonConverters.fromJson(json['createdDate'],'DateTime',context!);
return this;
}
Map<String, dynamic> toJson() => {
'id': id,
'purchaseOrderId': purchaseOrderId,
'productId': productId,
'productName': productName,
'quantity': quantity,
'price': price,
'discountDescription': discountDescription,
'discountSource': discountSource,
'discount': discount,
'createdDate': JsonConverters.toJson(createdDate,'DateTime',context!)
};
getTypeName() => "PurchaseOrderItem";
TypeContext? context = _ctx;
}
class PurchaseOrderDto implements IConvertible
{
int? id;
String? userId;
DateTime? createdDate;
String? paymentType;
bool? Void;
bool? paid;
String? transactionIdentifier;
String? couponCode;
List<PurchaseOrderItem>? orderItems;
String? payer;
String? billingAddressLine1;
String? billingAddressCity;
String? billingAddressState;
String? billingAddressPostalCode;
String? billingAddressCountryCode;
PurchaseOrderDto({this.id,this.userId,this.createdDate,this.paymentType,this.Void,this.paid,this.transactionIdentifier,this.couponCode,this.orderItems,this.payer,this.billingAddressLine1,this.billingAddressCity,this.billingAddressState,this.billingAddressPostalCode,this.billingAddressCountryCode});
PurchaseOrderDto.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
userId = json['userId'];
createdDate = JsonConverters.fromJson(json['createdDate'],'DateTime',context!);
paymentType = json['paymentType'];
Void = json['void'];
paid = json['paid'];
transactionIdentifier = json['transactionIdentifier'];
couponCode = json['couponCode'];
orderItems = JsonConverters.fromJson(json['orderItems'],'List<PurchaseOrderItem>',context!);
payer = json['payer'];
billingAddressLine1 = json['billingAddressLine1'];
billingAddressCity = json['billingAddressCity'];
billingAddressState = json['billingAddressState'];
billingAddressPostalCode = json['billingAddressPostalCode'];
billingAddressCountryCode = json['billingAddressCountryCode'];
return this;
}
Map<String, dynamic> toJson() => {
'id': id,
'userId': userId,
'createdDate': JsonConverters.toJson(createdDate,'DateTime',context!),
'paymentType': paymentType,
'void': Void,
'paid': paid,
'transactionIdentifier': transactionIdentifier,
'couponCode': couponCode,
'orderItems': JsonConverters.toJson(orderItems,'List<PurchaseOrderItem>',context!),
'payer': payer,
'billingAddressLine1': billingAddressLine1,
'billingAddressCity': billingAddressCity,
'billingAddressState': billingAddressState,
'billingAddressPostalCode': billingAddressPostalCode,
'billingAddressCountryCode': billingAddressCountryCode
};
getTypeName() => "PurchaseOrderDto";
TypeContext? context = _ctx;
}
class GetPurchaseOrdersResponse implements IConvertible
{
List<PurchaseOrderDto>? results;
GetPurchaseOrdersResponse({this.results});
GetPurchaseOrdersResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
results = JsonConverters.fromJson(json['results'],'List<PurchaseOrderDto>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'results': JsonConverters.toJson(results,'List<PurchaseOrderDto>',context!)
};
getTypeName() => "GetPurchaseOrdersResponse";
TypeContext? context = _ctx;
}
class GetPurchaseOrders implements IConvertible
{
String? userId;
DateTime? fromDate;
DateTime? toDate;
bool? Void;
bool? paid;
String? transactionIdentifier;
String? couponCode;
GetPurchaseOrders({this.userId,this.fromDate,this.toDate,this.Void,this.paid,this.transactionIdentifier,this.couponCode});
GetPurchaseOrders.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
userId = json['userId'];
fromDate = JsonConverters.fromJson(json['fromDate'],'DateTime',context!);
toDate = JsonConverters.fromJson(json['toDate'],'DateTime',context!);
Void = json['void'];
paid = json['paid'];
transactionIdentifier = json['transactionIdentifier'];
couponCode = json['couponCode'];
return this;
}
Map<String, dynamic> toJson() => {
'userId': userId,
'fromDate': JsonConverters.toJson(fromDate,'DateTime',context!),
'toDate': JsonConverters.toJson(toDate,'DateTime',context!),
'void': Void,
'paid': paid,
'transactionIdentifier': transactionIdentifier,
'couponCode': couponCode
};
getTypeName() => "GetPurchaseOrders";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'accounts.dev.healthmonix.com', types: <String, TypeInfo> {
'PurchaseOrderItem': TypeInfo(TypeOf.Class, create:() => PurchaseOrderItem()),
'PurchaseOrderDto': TypeInfo(TypeOf.Class, create:() => PurchaseOrderDto()),
'List<PurchaseOrderItem>': TypeInfo(TypeOf.Class, create:() => <PurchaseOrderItem>[]),
'GetPurchaseOrdersResponse': TypeInfo(TypeOf.Class, create:() => GetPurchaseOrdersResponse()),
'List<PurchaseOrderDto>': TypeInfo(TypeOf.Class, create:() => <PurchaseOrderDto>[]),
'GetPurchaseOrders': TypeInfo(TypeOf.Class, create:() => GetPurchaseOrders()),
});
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.
GET /api/purchaseorders HTTP/1.1 Host: accounts.dev.healthmonix.com Accept: text/jsv
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { results: [ { id: 0, userId: String, createdDate: 0001-01-01, paymentType: String, void: False, paid: False, transactionIdentifier: String, couponCode: String, orderItems: [ { id: 0, purchaseOrderId: 0, productId: String, productName: String, quantity: 0, price: 0, discountDescription: String, discountSource: String, discount: 0, createdDate: 0001-01-01 } ], payer: String, billingAddressLine1: String, billingAddressCity: String, billingAddressState: String, billingAddressPostalCode: String, billingAddressCountryCode: String } ] }