public DeliveryReceipt(ICurrentMarket currentMarket, PurchaseOrderModel purchaseOrder) { if (purchaseOrder == null) throw new ArgumentNullException("purchaseOrder cannot be null"); _purchaseOrder = purchaseOrder; _orderViewModel = new OrderViewModel(currentMarket.GetCurrentMarket().DefaultCurrency.Format, _purchaseOrder); To = _orderViewModel.Email; var localizationService = ServiceLocator.Current.GetInstance<LocalizationService>(); IMarketService marketService = ServiceLocator.Current.GetInstance<IMarketService>(); IMarket market = GetMarketForOrder(purchaseOrder, marketService, currentMarket); string emailSubject = localizationService.GetStringByCulture("/common/receipt/email/subject", market.DefaultLanguage); Subject = string.Format(emailSubject, _purchaseOrder.TrackingNumber); BackendOrderNumber = _orderViewModel.ErpOrderNumber; PurchaseOrderNumber = _purchaseOrder.TrackingNumber; // Get first shipment tracking number if (_purchaseOrder.OrderForms != null && _purchaseOrder.OrderForms.Any() && _purchaseOrder.OrderForms.First().Shipments != null && _purchaseOrder.OrderForms.First().Shipments.Any()) { TrackingNumber = _purchaseOrder.OrderForms.First().Shipments.First().ShipmentTrackingNumber; } }
public Receipt(IMarket market, PurchaseOrderModel purchaseOrder) { if (market == null) throw new ArgumentNullException("market"); if (purchaseOrder == null) throw new ArgumentNullException("purchaseOrder"); _purchaseOrder = purchaseOrder; _orderViewModel = new OrderViewModel(market.DefaultCurrency.Format, purchaseOrder); To = _orderViewModel.Email; var localizationService = ServiceLocator.Current.GetInstance<LocalizationService>(); Subject = string.Format(localizationService.GetString("/common/receipt/email/subject"), _purchaseOrder.TrackingNumber); }