public D_Order_Header InsertOrder(D_Order_Header order) { if (order == null) { throw new ArgumentNullException("order"); } var currentTime = DateTime.Now; var currentUser = Constants.SystemUser; if (_workContext.CurrentUser != null) { currentUser = _workContext.CurrentUser.Email; } order.FillOutNull(); order.CreateBy = currentUser; order.CreateTime = currentTime; order.EditBy = currentUser; order.EditTime = currentTime; foreach (var line in order.OrderLines) { line.FillOutNull(); line.CreateBy = currentUser; line.CreateTime = currentTime; line.EditBy = currentUser; line.EditTime = currentTime; } _orderRepository.Insert(order); return(order); }
public D_Order_Header UpdateOrder(D_Order_Header order) { if (order == null) { throw new ArgumentNullException("order"); } //Order Status Automatically Update if (!string.IsNullOrWhiteSpace(order.Ref2) && order.StatusID.Equals(ThirdStoreOrderStatus.AllGood.ToValue())) { order.StatusID = ThirdStoreOrderStatus.Investigating.ToValue(); } var currentTime = DateTime.Now; var currentUser = Constants.SystemUser; if (_workContext.CurrentUser != null) { currentUser = _workContext.CurrentUser.Email; } order.FillOutNull(); order.EditBy = currentUser; order.EditTime = currentTime; foreach (var line in order.OrderLines) { line.FillOutNull(); if (line.ID > 0) { line.EditBy = currentUser; line.EditTime = currentTime; } else { line.CreateBy = currentUser; line.CreateTime = currentTime; line.EditBy = currentUser; line.EditTime = currentTime; } } _orderRepository.Update(order); return(order); }
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)); }
public void DeleteOrder(D_Order_Header order) { throw new NotImplementedException(); }
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)); }
public static OrderGridViewModel ToModel(this D_Order_Header entity) { return(entity.MapTo <D_Order_Header, OrderGridViewModel>()); }