Hmx Accounts

<back to all web services

GetPurchaseOrders

The following routes are available for this service:
GET/api/purchaseordersSearch for PurchaseOrders
namespace Hmx.Accounts.Models

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type PurchaseOrderItem() = 
        member val Id:Int32 = new Int32() with get,set
        [<References(typeof<PurchaseOrder>)>]
        member val PurchaseOrderId:Int32 = new Int32() with get,set

        [<References(typeof<Product>)>]
        member val ProductId:String = null with get,set

        member val ProductName:String = null with get,set
        member val Quantity:Int32 = new Int32() with get,set
        member val Price:Decimal = new Decimal() with get,set
        member val DiscountDescription:String = null with get,set
        member val DiscountSource:String = null with get,set
        member val Discount:Decimal = new Decimal() with get,set
        member val CreatedDate:DateTime = new DateTime() with get,set

    [<AllowNullLiteral>]
    type PurchaseOrderDto() = 
        member val Id:Int32 = new Int32() with get,set
        member val UserId:String = null with get,set
        member val CreatedDate:DateTime = new DateTime() with get,set
        member val PaymentType:String = null with get,set
        member val Void:Boolean = new Boolean() with get,set
        member val Paid:Boolean = new Boolean() with get,set
        member val TransactionIdentifier:String = null with get,set
        member val CouponCode:String = null with get,set
        member val OrderItems:ResizeArray<PurchaseOrderItem> = new ResizeArray<PurchaseOrderItem>() with get,set
        member val Payer:String = null with get,set
        member val BillingAddressLine1:String = null with get,set
        member val BillingAddressCity:String = null with get,set
        member val BillingAddressState:String = null with get,set
        member val BillingAddressPostalCode:String = null with get,set
        member val BillingAddressCountryCode:String = null with get,set

    [<AllowNullLiteral>]
    type GetPurchaseOrdersResponse() = 
        member val Results:ResizeArray<PurchaseOrderDto> = new ResizeArray<PurchaseOrderDto>() with get,set

    [<AllowNullLiteral>]
    type GetPurchaseOrders() = 
        member val UserId:String = null with get,set
        member val FromDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val ToDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val Void:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val Paid:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val TransactionIdentifier:String = null with get,set
        member val CouponCode:String = null with get,set

F# GetPurchaseOrders DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + 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
		}
	]
}