コード例 #1
0
 public Entity.LineItem ParseLineItem(Model.LineItem item, bool create)
 {
     if (item is null)
     {
         return(null);
     }
     if (create)
     {
         return(new Entity.LineItem
         {
             ProductId = item.Product.Id,
             OrderId = item.OrderId,
             Quantity = item.Quantity
         });
     }
     else
     {
         return(new Entity.LineItem
         {
             Id = item.Id,
             ProductId = item.Product.Id,
             OrderId = item.OrderId,
             Quantity = item.Quantity
         });
     }
 }
コード例 #2
0
/// <summary>
/// This method is for adding a new product to an open order
/// </summary>
/// <param name="item"></param>
/// <returns></returns>
        public Model.Order AddItemToOrder(Model.LineItem item)
        {
            _context.LineItems.Add(ToEntity(item));
            _context.SaveChanges();
            _context.ChangeTracker.Clear();
            return(GetOrderById(item.OrderId));
        }
コード例 #3
0
 public Model.LineItem CreateLineItem(Model.LineItem item)
 {
     _context.LineItems.Add(_mapper.ParseLineItem(item, true));
     _context.SaveChanges();
     _context.ChangeTracker.Clear();
     return(item);
 }
コード例 #4
0
 public Model.LineItem GetLineItem(Model.LineItem lineItem)
 {
     Entity.LineItem found = _context.LineItems.FirstOrDefault(li => li.ProductId == lineItem.ProductID && li.Quantity == lineItem.Quantity && li.OrderId == lineItem.OrderID);
     if (found == null)
     {
         return(null);
     }
     Log.Information("DL sent line item to BL");
     return(new Model.LineItem(found.LineItemId, lineItem.ProductID, found.Quantity, found.OrderId));
 }
コード例 #5
0
 public Entity.LineItem ToEntity(Model.LineItem item)
 {
     return(new Entity.LineItem {
         Id = item.Id,
         Quantity = item.Quantity,
         OrderId = item.OrderId,
         ProductId = item.Product.Id,
         Product = ToEntity(item.Product)
     });
 }
コード例 #6
0
/// <summary>
/// this is for changing quantities of an item already in the cart
/// </summary>
/// <param name="item"></param>
/// <returns></returns>
        public Model.Order UpdateItemToOrder(Model.LineItem item)
        {
            Entity.LineItem toUpdate = _context.LineItems
                                       .FirstOrDefault(it => it.Id == item.Id);
            toUpdate.Quantity = item.Quantity;

            _context.SaveChanges();
            _context.ChangeTracker.Clear();
            return(GetOrderById(item.OrderId));
        }
コード例 #7
0
 public Model.LineItem AddLineItem(Model.LineItem lineItem, Model.Product product)
 {
     _context.LineItems.Add(
         new Entity.LineItem {
         ProductId = lineItem.ProductID,
         Quantity  = lineItem.Quantity,
         OrderId   = lineItem.OrderID
     }
         );
     Log.Information("DL persisted line item add to DB");
     _context.SaveChanges();
     return(lineItem);
 }