public OrderModels CreateOrder(OrderModels newOrder, string user_id) { var cart = GetCart(); newOrder.Order_ordered_at = DateTime.Now; newOrder.Order_User_id = user_id; db.Orders.Add(newOrder); if (newOrder.OrderPosition == null) { newOrder.OrderPosition = new List <OrderPositionModels>(); } double cartValue = 0; foreach (var cartElem in cart) { var newOrderPosition = new OrderPositionModels() { OrderPosition_product_id = cartElem.Product.Id, OrderPosition_quantity = cartElem.quantity, OrderPosition_price = cartElem.Product.Product_price }; cartValue += (cartElem.quantity * cartElem.Product.Product_price); newOrder.OrderPosition.Add(newOrderPosition); } newOrder.Order_total_order_price = cartValue; db.SaveChanges(); return(newOrder); }
public List <OrderPositionModels> GetPositionWithModel(List <OrderViewDTO> model, DateTime dtmFromdate, DateTime dtmToDate) { List <OrderPositionModels> lsResult = new List <OrderPositionModels>(); model = model.Where(x => DateTime.Compare(dtmFromdate, DateTime.Parse(x.CreateDate)) <= 0 && DateTime.Compare(DateTime.Parse(x.CreateDate), dtmToDate) <= 0).ToList(); int datediff = (dtmToDate.Date - dtmFromdate.Date).Days; for (int i = 0; i <= datediff; i++) { var colItem = model.Where(x => DateTime.Parse(x.CreateDate).Day == i); if (colItem.Count() > 0) { int j = 0; foreach (var _colitem in colItem) { OrderPositionModels item = new OrderPositionModels(); item.X = i; item.Y = j; item.OrderItem = _colitem; lsResult.Add(item); j++; } } } return(lsResult); }