public static LineItem ToShopifyModel(this StorefrontModel.Order.LineItem lineItem, IStorefrontUrlBuilder urlBuilder) { var result = new LineItem { Fulfillment = null, Grams = lineItem.Weight ?? 0m, Id = lineItem.Id, Quantity = lineItem.Quantity ?? 0, Price = lineItem.Price.Amount, ProductId = lineItem.ProductId, Sku = lineItem.Name, Title = lineItem.Name, Url = urlBuilder.ToAppAbsolute("/product/" + lineItem.ProductId), }; result.LinePrice = result.Price * result.Quantity; result.Product = new Product { Id = result.ProductId, Url = result.Url }; //result.Image = lineItem.Product.PrimaryImage != null ? lineItem.Product.PrimaryImage.ToShopifyModel() : null; //result.RequiresShipping = lineItem.RequiredShipping; //result.Taxable = lineItem.TaxIncluded; return(result); }
public virtual LineItem ToLiquidLineItem(StorefrontModel.Order.LineItem lineItem, StorefrontModel.Language language, IStorefrontUrlBuilder urlBuilder) { var result = new LineItem(); result.Id = lineItem.Id; result.Quantity = lineItem.Quantity ?? 1; result.Sku = lineItem.Sku; result.Title = lineItem.Name; result.Url = lineItem.ImageUrl; result.Fulfillment = null; // TODO result.Grams = (decimal?)lineItem.Weight ?? 0m; result.Image = new Image { Alt = lineItem.Name, Name = lineItem.Name, ProductId = lineItem.ProductId, Src = lineItem.ImageUrl }; result.LinePrice = lineItem.ExtendedPrice.Amount * 100; result.LinePriceWithTax = lineItem.ExtendedPriceWithTax.Amount * 100; result.Price = lineItem.PlacedPrice.Amount * 100; result.PriceWithTax = lineItem.PlacedPriceWithTax.Amount * 100; result.Title = lineItem.Name; result.Type = lineItem.ObjectType; result.Url = urlBuilder.ToAppAbsolute("/product/" + lineItem.ProductId); result.Product = new Product { Id = result.ProductId, Url = result.Url }; return(result); }
public virtual LineItem ToLiquidLineItem(StorefrontModel.Order.LineItem lineItem, StorefrontModel.Language language, IStorefrontUrlBuilder urlBuilder) { var factory = ServiceLocator.Current.GetInstance <ShopifyModelFactory>(); var result = factory.CreateLineItem(); result.InjectFrom <StorefrontModel.Common.NullableAndEnumValueInjecter>(lineItem); result.Fulfillment = null; // TODO result.Grams = lineItem.Weight ?? 0m; result.Image = new Image { Alt = lineItem.Name, Name = lineItem.Name, ProductId = lineItem.ProductId, Src = lineItem.ImageUrl }; result.LinePrice = lineItem.ExtendedPrice.Amount * 100; result.LinePriceWithTax = lineItem.ExtendedPriceWithTax.Amount * 100; result.Price = lineItem.PlacedPrice.Amount * 100; result.PriceWithTax = lineItem.PlacedPriceWithTax.Amount * 100; result.Title = lineItem.Name; result.Type = lineItem.ObjectType; result.Url = urlBuilder.ToAppAbsolute("/product/" + lineItem.ProductId); result.Product = new Product { Id = result.ProductId, Url = result.Url }; return(result); }
public static LineItem ToShopifyModel(this StorefrontModel.Order.LineItem lineItem, StorefrontModel.Language language, IStorefrontUrlBuilder urlBuilder) { var converter = new ShopifyModelConverter(); return(converter.ToLiquidLineItem(lineItem, language, urlBuilder)); }
public static LineItem ToShopifyModel(this StorefrontModel.Order.LineItem lineItem, StorefrontModel.Language language, IStorefrontUrlBuilder urlBuilder) { var converter = ServiceLocator.Current.GetInstance <ShopifyModelConverter>(); return(converter.ToLiquidLineItem(lineItem, language, urlBuilder)); }