//public IQueryable<Shop.Domain.Models.Products.Product> FilterProducts(Shop.Domain.Models.Orders.Order order) //{ // List<string> productsOfSalesOrderIds = new List<string>(); // foreach (var product in order.OrderProducts) // { // productsOfSalesOrderIds.Add(product.ProductId); // } // var products = _ctx.Products;//.Where(x => order.OrderProducts.Contains(order.OrderProducts)); // //filter here for the products in the salesorder // //var orderproducts = // return products; //} public List <Shop.Domain.Models.Products.Product> GetProducts(Shop.Domain.Models.Orders.Order order) { List <string> productsOfSalesOrderIds = new List <string>(); foreach (var product in order.OrderProducts) { productsOfSalesOrderIds.Add(product.ProductId); } var ids = productsOfSalesOrderIds.ToArray(); return(_ctx.Products .Where(p => ids.Contains(p.Id)) .ToList()); }
public List <SalesOrderLineitem> getLineItems(List <Shop.Domain.Models.Products.Product> _products, Shop.Domain.Models.Orders.Order order) { List <SalesOrderLineitem> li = new List <SalesOrderLineitem>(); foreach (var x in _products) { SalesOrderLineitem soli = new SalesOrderLineitem { Id = 1, CreatedDate = DateTime.UtcNow, TransactionId = 3, ProductId = 1, ProductOptionId = 6, StyleCode = x.Colour, Code = x.ExternalId, Name = x.Name, Option1 = x.Unit, Option2 = x.Brand, SizeCodes = "none", LineComments = "none", IntegrationRef = x.Id, //Qty = x.order.Qty, UnitPrice = x.Price ?? 0, Discount = 0, QtyShipped = 0 }; foreach (var p in order.OrderProducts) { if (x.Id == p.ProductId) { soli.Qty = p.Qty; } } li.Add(soli); } return(li); }