private D_Order_Header UpdateLocalOrder(GetOrderResponseOrder netoOrder, D_Order_Header existingOrder = null) { D_Order_Header updateOrder = null; if (existingOrder == null) { updateOrder = GetOrderByChannelOrderID(netoOrder.OrderID, 1); } else { updateOrder = existingOrder; } updateOrder.Ref1 = netoOrder.OrderStatus; updateOrder.SubTotal = Convert.ToDecimal(netoOrder.GrandTotal); updateOrder.TotalAmount = Convert.ToDecimal(netoOrder.GrandTotal); updateOrder.Postage = netoOrder.ShippingTotal; if (netoOrder.OrderPayment != null && netoOrder.OrderPayment.Count() > 0) { var orderPayment = netoOrder.OrderPayment.FirstOrDefault(); updateOrder.PaymentMethod = orderPayment.PaymentType; if (netoOrder.DatePaid.HasValue) { updateOrder.PaidTime = netoOrder.DatePaid.Value.ToLocalTime(); } } //Shipping Address updateOrder.ConsigneeName = $"{netoOrder.ShipFirstName} {netoOrder.ShipLastName}"; updateOrder.ShippingAddress1 = netoOrder.ShipStreetLine1; updateOrder.ShippingAddress2 = netoOrder.ShipStreetLine2; updateOrder.ShippingSuburb = netoOrder.ShipCity; updateOrder.ShippingPostcode = netoOrder.ShipPostCode; updateOrder.ShippingState = netoOrder.ShipState; updateOrder.ShippingCountry = netoOrder.ShipCountry; updateOrder.ConsigneeEmail = netoOrder.Email; updateOrder.ConsigneePhoneNo = netoOrder.ShipPhone; //Billing Address updateOrder.BillingName = $"{netoOrder.BillFirstName} {netoOrder.BillLastName}"; updateOrder.BillingAddress1 = netoOrder.BillStreetLine1; updateOrder.BillingAddress2 = netoOrder.BillStreetLine2; updateOrder.BillingSuburb = netoOrder.BillCity; updateOrder.BillingPostcode = netoOrder.BillPostCode; updateOrder.BillingState = netoOrder.BillState; updateOrder.BillingCountry = netoOrder.BillCountry; updateOrder.BillingEmail = netoOrder.Email; updateOrder.BillingPhoneNo = netoOrder.BillPhone; updateOrder.BuyerNote = netoOrder.DeliveryInstruction; foreach (var line in netoOrder.OrderLine) { var updateOrderLine = updateOrder.OrderLines.Where(ol => ol.Ref1.Equals(line.OrderLineID)).FirstOrDefault(); if (updateOrderLine == null) { updateOrderLine = new D_Order_Line(); updateOrder.OrderLines.Add(updateOrderLine); } updateOrderLine.ItemPrice = line.UnitPrice; updateOrderLine.Qty = Convert.ToInt32(line.Quantity); updateOrderLine.SKU = line.SKU; updateOrderLine.SubTotal = updateOrderLine.ItemPrice * updateOrderLine.Qty; updateOrderLine.Ref1 = line.OrderLineID; if (line.eBay != null) { updateOrderLine.Ref2 = $"{line.eBay.eBayAuctionID}-{line.eBay.eBayTransactionID}"; } updateOrderLine.Ref3 = line.ShippingMethod; updateOrderLine.Ref4 = line.ShippingTracking; } return(this.UpdateOrder(updateOrder)); }
private D_Order_Header CreateNewLocalOrder(GetOrderResponseOrder netoOrder) { var newOrder = new D_Order_Header(); newOrder.TypeID = 1; //TODO newOrder.StatusID = 1; //TODO newOrder.ChannelOrderID = netoOrder.OrderID; newOrder.Ref1 = netoOrder.OrderStatus; newOrder.SubTotal = Convert.ToDecimal(netoOrder.GrandTotal); newOrder.TotalAmount = Convert.ToDecimal(netoOrder.GrandTotal); newOrder.Postage = netoOrder.ShippingTotal; newOrder.OrderTime = netoOrder.DatePlaced.HasValue? netoOrder.DatePlaced.Value.ToLocalTime():DateTime.Now; newOrder.CustomerID = netoOrder.Username; if (netoOrder.OrderPayment != null && netoOrder.OrderPayment.Count() > 0) { var orderPayment = netoOrder.OrderPayment.FirstOrDefault(); newOrder.PaymentMethod = orderPayment.PaymentType; if (netoOrder.DatePaid.HasValue) { newOrder.PaidTime = netoOrder.DatePaid.Value.ToLocalTime(); } //newOrder.PaidTime = netoOrder.DatePaid.ToLocalTime(); } //Shipping Address newOrder.ConsigneeName = $"{netoOrder.ShipFirstName} {netoOrder.ShipLastName}"; newOrder.ShippingAddress1 = netoOrder.ShipStreetLine1; newOrder.ShippingAddress2 = netoOrder.ShipStreetLine2; newOrder.ShippingSuburb = netoOrder.ShipCity; newOrder.ShippingPostcode = netoOrder.ShipPostCode; newOrder.ShippingState = netoOrder.ShipState; newOrder.ShippingCountry = netoOrder.ShipCountry; newOrder.ConsigneeEmail = netoOrder.Email; newOrder.ConsigneePhoneNo = netoOrder.ShipPhone; //Billing Address newOrder.BillingName = $"{netoOrder.BillFirstName} {netoOrder.BillLastName}"; newOrder.BillingAddress1 = netoOrder.BillStreetLine1; newOrder.BillingAddress2 = netoOrder.BillStreetLine2; newOrder.BillingSuburb = netoOrder.BillCity; newOrder.BillingPostcode = netoOrder.BillPostCode; newOrder.BillingState = netoOrder.BillState; newOrder.BillingCountry = netoOrder.BillCountry; newOrder.BillingEmail = netoOrder.Email; newOrder.BillingPhoneNo = netoOrder.BillPhone; newOrder.BuyerNote = netoOrder.DeliveryInstruction; foreach (var line in netoOrder.OrderLine) { var newOrderLine = new D_Order_Line(); newOrderLine.ItemPrice = line.UnitPrice; newOrderLine.Qty = Convert.ToInt32(line.Quantity); newOrderLine.SKU = line.SKU; newOrderLine.SubTotal = newOrderLine.ItemPrice * newOrderLine.Qty; newOrderLine.Ref1 = line.OrderLineID; if (line.eBay != null) { newOrderLine.Ref2 = $"{line.eBay.eBayAuctionID}-{line.eBay.eBayTransactionID}"; } newOrderLine.Ref3 = line.ShippingMethod; newOrderLine.Ref4 = line.ShippingTracking; newOrder.OrderLines.Add(newOrderLine); } return(this.InsertOrder(newOrder)); }