private ConfirmationEmailViewModel MapPurchaseOrder(Ucommerce.EntitiesV2.PurchaseOrder purchaseOrder, ConfirmationEmailViewModel confirmationEmailViewModel) { confirmationEmailViewModel.BillingAddress = purchaseOrder.BillingAddress ?? new Ucommerce.EntitiesV2.OrderAddress(); confirmationEmailViewModel.ShipmentAddress = purchaseOrder.GetShippingAddress("Shipment") ?? new Ucommerce.EntitiesV2.OrderAddress(); foreach (var orderLine in purchaseOrder.OrderLines) { var orderLineCurrencyIsoCode = orderLine.PurchaseOrder.BillingCurrency.ISOCode; var orderLineModel = new ConfirmationEmailOrderLine { ProductName = orderLine.ProductName, Sku = orderLine.Sku, VariantSku = orderLine.VariantSku, Total = new Money(orderLine.Total.GetValueOrDefault(), orderLineCurrencyIsoCode).ToString(), Tax = new Money(orderLine.VAT, orderLineCurrencyIsoCode).ToString(), Price = new Money(orderLine.Price, orderLineCurrencyIsoCode).ToString(), PriceWithDiscount = new Money(orderLine.Price - orderLine.Discount, orderLineCurrencyIsoCode).ToString(), Quantity = orderLine.Quantity, Discount = orderLine.Discount }; confirmationEmailViewModel.OrderLines.Add(orderLineModel); } var currencyIsoCode = purchaseOrder.BillingCurrency.ISOCode; confirmationEmailViewModel.DiscountTotal = new Money(purchaseOrder.DiscountTotal.GetValueOrDefault(), currencyIsoCode).ToString(); confirmationEmailViewModel.DiscountAmount = purchaseOrder.DiscountTotal.GetValueOrDefault(); confirmationEmailViewModel.SubTotal = new Money(purchaseOrder.SubTotal.GetValueOrDefault(), currencyIsoCode).ToString(); confirmationEmailViewModel.OrderTotal = new Money(purchaseOrder.OrderTotal.GetValueOrDefault(), currencyIsoCode).ToString(); confirmationEmailViewModel.TaxTotal = new Money(purchaseOrder.TaxTotal.GetValueOrDefault(), currencyIsoCode).ToString(); confirmationEmailViewModel.ShippingTotal = new Money(purchaseOrder.ShippingTotal.GetValueOrDefault(), currencyIsoCode).ToString(); confirmationEmailViewModel.PaymentTotal = new Money(purchaseOrder.PaymentTotal.GetValueOrDefault(), currencyIsoCode).ToString(); confirmationEmailViewModel.OrderNumber = purchaseOrder.OrderNumber; confirmationEmailViewModel.CustomerName = purchaseOrder.Customer.FirstName; var shipment = purchaseOrder.Shipments.FirstOrDefault(); if (shipment != null) { confirmationEmailViewModel.ShipmentName = shipment.ShipmentName; confirmationEmailViewModel.ShipmentAmount = purchaseOrder.ShippingTotal.GetValueOrDefault(); } var payment = purchaseOrder.Payments.FirstOrDefault(); if (payment != null) { confirmationEmailViewModel.PaymentName = payment.PaymentMethodName; confirmationEmailViewModel.PaymentAmount = purchaseOrder.PaymentTotal.GetValueOrDefault(); } return(confirmationEmailViewModel); }
private static void MapAddresses(Ucommerce.EntitiesV2.PurchaseOrder purchaseOrder, BasketPreviewViewModel basketPreviewViewModel) { if (purchaseOrder.BillingAddress != null) { if (!purchaseOrder.BillingAddress.FirstName.IsNullOrWhitespace()) { basketPreviewViewModel.BillingAddress.FirstName = purchaseOrder.BillingAddress.FirstName; } if (!purchaseOrder.BillingAddress.LastName.IsNullOrWhitespace()) { basketPreviewViewModel.BillingAddress.LastName = purchaseOrder.BillingAddress.LastName; } if (!purchaseOrder.BillingAddress.EmailAddress.IsNullOrWhitespace()) { basketPreviewViewModel.BillingAddress.EmailAddress = purchaseOrder.BillingAddress.EmailAddress; } if (!purchaseOrder.BillingAddress.PhoneNumber.IsNullOrWhitespace()) { basketPreviewViewModel.BillingAddress.PhoneNumber = purchaseOrder.BillingAddress.PhoneNumber; } if (!purchaseOrder.BillingAddress.MobilePhoneNumber.IsNullOrWhitespace()) { basketPreviewViewModel.BillingAddress.MobilePhoneNumber = purchaseOrder.BillingAddress.MobilePhoneNumber; } if (!purchaseOrder.BillingAddress.Line1.IsNullOrWhitespace()) { basketPreviewViewModel.BillingAddress.Line1 = purchaseOrder.BillingAddress.Line1; } if (!purchaseOrder.BillingAddress.Line2.IsNullOrWhitespace()) { basketPreviewViewModel.BillingAddress.Line2 = purchaseOrder.BillingAddress.Line2; } if (!purchaseOrder.BillingAddress.PostalCode.IsNullOrWhitespace()) { basketPreviewViewModel.BillingAddress.PostalCode = purchaseOrder.BillingAddress.PostalCode; } if (!purchaseOrder.BillingAddress.City.IsNullOrWhitespace()) { basketPreviewViewModel.BillingAddress.City = purchaseOrder.BillingAddress.City; } if (!purchaseOrder.BillingAddress.State.IsNullOrWhitespace()) { basketPreviewViewModel.BillingAddress.State = purchaseOrder.BillingAddress.State; } if (!purchaseOrder.BillingAddress.Attention.IsNullOrWhitespace()) { basketPreviewViewModel.BillingAddress.Attention = purchaseOrder.BillingAddress.Attention; } if (!purchaseOrder.BillingAddress.CompanyName.IsNullOrWhitespace()) { basketPreviewViewModel.BillingAddress.CompanyName = purchaseOrder.BillingAddress.CompanyName; } if (purchaseOrder.BillingAddress.Country.CountryId > 0) { basketPreviewViewModel.BillingAddress.Country.CountryId = purchaseOrder.BillingAddress.Country.CountryId; } if (!purchaseOrder.BillingAddress.Country.Name.IsNullOrWhitespace()) { basketPreviewViewModel.BillingAddress.Country.Name = purchaseOrder.BillingAddress.Country.Name; } } var shipmentAddress = purchaseOrder.GetShippingAddress(Ucommerce.Constants.DefaultShipmentAddressName); if (shipmentAddress != null) { if (!shipmentAddress.FirstName.IsNullOrWhitespace()) { basketPreviewViewModel.ShipmentAddress.FirstName = shipmentAddress.FirstName; } if (!shipmentAddress.LastName.IsNullOrWhitespace()) { basketPreviewViewModel.ShipmentAddress.LastName = shipmentAddress.LastName; } if (!shipmentAddress.EmailAddress.IsNullOrWhitespace()) { basketPreviewViewModel.ShipmentAddress.EmailAddress = shipmentAddress.EmailAddress; } if (!shipmentAddress.PhoneNumber.IsNullOrWhitespace()) { basketPreviewViewModel.ShipmentAddress.PhoneNumber = shipmentAddress.PhoneNumber; } if (!shipmentAddress.MobilePhoneNumber.IsNullOrWhitespace()) { basketPreviewViewModel.ShipmentAddress.MobilePhoneNumber = shipmentAddress.MobilePhoneNumber; } if (!shipmentAddress.Line1.IsNullOrWhitespace()) { basketPreviewViewModel.ShipmentAddress.Line1 = shipmentAddress.Line1; } if (!shipmentAddress.Line2.IsNullOrWhitespace()) { basketPreviewViewModel.ShipmentAddress.Line2 = shipmentAddress.Line2; } if (!shipmentAddress.PostalCode.IsNullOrWhitespace()) { basketPreviewViewModel.ShipmentAddress.PostalCode = shipmentAddress.PostalCode; } if (!shipmentAddress.City.IsNullOrWhitespace()) { basketPreviewViewModel.ShipmentAddress.City = shipmentAddress.City; } if (!shipmentAddress.State.IsNullOrWhitespace()) { basketPreviewViewModel.ShipmentAddress.State = shipmentAddress.State; } if (!shipmentAddress.Attention.IsNullOrWhitespace()) { basketPreviewViewModel.ShipmentAddress.Attention = shipmentAddress.Attention; } if (!shipmentAddress.CompanyName.IsNullOrWhitespace()) { basketPreviewViewModel.ShipmentAddress.CompanyName = shipmentAddress.CompanyName; } if (shipmentAddress.Country.CountryId > 0) { basketPreviewViewModel.ShipmentAddress.Country.CountryId = shipmentAddress.Country.CountryId; } if (!shipmentAddress.Country.Name.IsNullOrWhitespace()) { basketPreviewViewModel.ShipmentAddress.Country.Name = shipmentAddress.Country.Name; } } }