Skip to content

Instantly share code, notes, and snippets.

@JamesBender
Created November 10, 2013 20:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save JamesBender/7403169 to your computer and use it in GitHub Desktop.
Save JamesBender/7403169 to your computer and use it in GitHub Desktop.
private void PlaceOrderWithFulfillmentService(ShoppingCart shoppingCart, Customer customer)
{
//Open Session
var orderFulfillmentSessionId = OpenOrderFulfillmentSession();
PlaceOrderWithFulfillmentService(orderFulfillmentSessionId, shoppingCart, customer);
//Close Session
CloseOrderFulfillmentService(orderFulfillmentSessionId);
}
private void PlaceOrderWithFulfillmentService(Guid orderFulfillmentSessionId, ShoppingCart shoppingCart, Customer customer)
{
var firstItemId = shoppingCart.Items[0].ItemId;
var firstItemQuantity = shoppingCart.Items[0].Quantity;
//Check Inventory Level
var itemIsInInventory = _orderFulfillmentService.IsInInventory(orderFulfillmentSessionId, firstItemId, firstItemQuantity);
//Place Orders
var orderForFulfillmentService = new Dictionary<Guid, int>();
orderForFulfillmentService.Add(firstItemId, firstItemQuantity);
var orderPlaced = _orderFulfillmentService.PlaceOrder(orderFulfillmentSessionId,
orderForFulfillmentService,
customer.ShippingAddress.ToString());
}
private void CloseOrderFulfillmentService(Guid orderFulfillmentSessionId)
{
_orderFulfillmentService.CloseSession(orderFulfillmentSessionId);
}
private Guid OpenOrderFulfillmentSession()
{
var orderFulfillmentSessionId = _orderFulfillmentService.OpenSession(USERNAME, PASSWORD);
return orderFulfillmentSessionId;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment