/// <summary> /// Update item in db /// </summary> /// <param name="itUpdated"></param> public void UpdateItem(Item itUpdated) { using (PoolContext db = new PoolContext()) { // Getting the item with given id Item toUdpate = db.Items.FirstOrDefault(item => item.ItemId == itUpdated.ItemId); if (toUdpate != null) { // Update the detaild // Checking if the name have to be updated if (toUdpate.Name != itUpdated.Name) { // Checking that the new name doesn't already exists if (this.DoesItemNameAlreadyExists(itUpdated.Name)) { throw new Exception("מוצר עם השם " + itUpdated.Name + " כבר קיים במערכת"); } } toUdpate.Name = itUpdated.Name; toUdpate.Price = itUpdated.Price; // Save changes this.SafeSave(db); } } }
public void AddOrder(Order orderToAdd) { using (PoolContext db = new PoolContext()) { db.Orders.AddObject(orderToAdd); db.SaveChanges(); } }
public void AddItem(Item itToAdd) { using (PoolContext db = new PoolContext()) { db.Items.AddObject(itToAdd); db.SaveChanges(); } }
public void AddItemsToOrder(ItemsToOrder toAdd) { using (PoolContext db = new PoolContext()) { db.ItemsToOrders.AddObject(toAdd); db.SaveChanges(); } }
public void AddItems(List <Item> m_lstTempItems) { using (PoolContext db = new PoolContext()) { foreach (Item item in m_lstTempItems) { db.Items.AddObject(item); db.SaveChanges(); } } }
public void DeleteItem(Item itToDelete) { using (PoolContext db = new PoolContext()) { // Getting the item with given id Item toDelete = db.Items.First(item => item.ItemId == itToDelete.ItemId); db.Items.DeleteObject(toDelete); db.SaveChanges(); } }
/// <summary> /// Save safely data to db /// </summary> /// <param name="db"></param> private void SafeSave(PoolContext db) { try { db.SaveChanges(); } catch (Exception ex) { // TODO: write to log throw new Exception("שגיאה ארעה בשמירת הנתונים", ex); } }
public void DeleteOrder(Order orderToDelete) { using (PoolContext db = new PoolContext()) { // Getting the item with given id Order toDelete = db.Orders.First(order => order.OrderId == orderToDelete.OrderId); db.Orders.DeleteObject(toDelete); db.SaveChanges(); } }
/// <summary> /// Add order to db /// </summary> /// <param name="orderToAdd"></param> public void AddOrder(Order orderToAdd) { using (PoolContext db = new PoolContext()) { foreach (ItemsToOrder currentItem in orderToAdd.ItemsToOrder) { db.Items.Attach(currentItem.Item); } db.Orders.AddObject(orderToAdd); this.SafeSave(db); } }
public void AddOrder(Order orderToAdd) { using (PoolContext db = new PoolContext()) { foreach (ItemsToOrder item in orderToAdd.ItemsToOrder) { item.Item = null; } db.Orders.AddObject(orderToAdd); db.SaveChanges(); } }
public List <Item> GetAllItems() { List <Item> list = new List <Item>(); using (PoolContext db = new PoolContext()) { var query = from item in db.Items select item; list = query.ToList <Item>(); } return(list); }
public List <Order> GetAllOrders() { List <Order> list = new List <Order>(); using (PoolContext db = new PoolContext()) { var query = from order in db.Orders.Include("ItemsToOrder.Item") select order; list = query.ToList <Order>(); } return(list); }
/// <summary> /// Add item to db /// </summary> /// <param name="itToAdd"></param> public void AddItem(Item itToAdd) { // Checking that item with same name doesn't exist if (this.DoesItemNameAlreadyExists(itToAdd.Name)) { throw new Exception("מוצר עם השם " + itToAdd.Name + " כבר קיים במערכת"); } using (PoolContext db = new PoolContext()) { db.Items.AddObject(itToAdd); this.SafeSave(db); } }
/// <summary> /// Delete item from db /// </summary> /// <param name="itToDelete"></param> public void DeleteItem(Item itToDelete) { using (PoolContext db = new PoolContext()) { // Getting the item with given id Item toDelete = db.Items.FirstOrDefault(item => item.ItemId == itToDelete.ItemId); if (toDelete != null) { db.Items.DeleteObject(toDelete); this.SafeSave(db); } } }
public void UpdateItem(Item itUpdated) { using (PoolContext db = new PoolContext()) { // Getting the item with given id Item toUdpate = db.Items.First(item => item.ItemId == itUpdated.ItemId); // Update the detaild toUdpate.Name = itUpdated.Name; toUdpate.Price = itUpdated.Price; // Save changes db.SaveChanges(); } }
/// <summary> /// Get specific order by date time start and end /// </summary> /// <param name="dtStart">Start date time</param> /// <param name="dtEnd">End date time</param> /// <returns></returns> public List <Order> GetOrdersByDate(DateTime dtStart, DateTime dtEnd) { List <Order> list = new List <Order>(); using (PoolContext db = new PoolContext()) { var query = from order in db.Orders.Include("ItemsToOrder.Item") where order.Date >= dtStart && order.Date <= dtEnd select order; list = query.ToList <Order>(); } return(list); }
/// <summary> /// Checking item with the given name already exists in db /// </summary> /// <param name="ItemName"></param> /// <returns></returns> private bool DoesItemNameAlreadyExists(string ItemName) { bool bDoesExists = false; using (PoolContext db = new PoolContext()) { var query = from item in db.Items where item.Name == ItemName select item; if (query.Count() > 0) { bDoesExists = true; } } return(bDoesExists); }
public void UpdateOrder(Order orderToUpdate) { using (PoolContext db = new PoolContext()) { // Getting the item with given id Order toUpdate = db.Orders.Include("ItemsToOrder.Item").First(order => order.OrderId == orderToUpdate.OrderId); toUpdate.Date = orderToUpdate.Date; toUpdate.GameHoursTime = orderToUpdate.GameHoursTime; // Compare the list of items to order int nIndex = 0; List <int> toDeleteIndexes = new List <int>(); foreach (ItemsToOrder current1 in toUpdate.ItemsToOrder) { bool bIsStillExists = false; // Checking it exists in the update list foreach (ItemsToOrder current2 in orderToUpdate.ItemsToOrder) { if ((current1.ItemId == current2.ItemId) && (current1.OrderId == current2.OrderId)) { current1.Amount = current2.Amount; bIsStillExists = true; break; } } if (!bIsStillExists) { toDeleteIndexes.Add(nIndex); } ++nIndex; } // Delete all the not existsing elements foreach (int nCurrentIndex in toDeleteIndexes) { toUpdate.ItemsToOrder.RemoveAt(nCurrentIndex); } List <ItemsToOrder> lstToAdd = new List <ItemsToOrder>(); foreach (ItemsToOrder current1 in orderToUpdate.ItemsToOrder) { bool bIsNewElement = true; // Checking it exists in the update list foreach (ItemsToOrder current2 in toUpdate.ItemsToOrder) { if ((current1.ItemId == current2.ItemId) && (current1.OrderId == current2.OrderId)) { current1.Amount = current2.Amount; bIsNewElement = false; break; } } if (bIsNewElement) { lstToAdd.Add(current1); } } // Adding all the new elements foreach (ItemsToOrder currentToAdd in lstToAdd) { toUpdate.ItemsToOrder.Add(currentToAdd); } db.SaveChanges(); } }