public void ShowAll() { using (DataAccess.ShopContext sctx = new DataAccess.ShopContext()) { var clients = from cl in sctx.Clients.Include(i => i.Items).Include(c => c.Customers) select cl; foreach (var client in clients) { Console.WriteLine(client.Name + " :: " + client.Id + " :: Customer List:"); var customers = client.Customers.ToList(); foreach (var c in client.Customers) { Console.WriteLine(c.Id + " :: Amount :: " + c.Amount + "$$ :: Inventory:"); var inventoryList = sctx.Set <DataAccess.CustomerItem>().Where(i => i.CustomerId == c.Id).ToList(); foreach (var i in inventoryList) { Console.WriteLine("----------" + i.Name); } } } } }
public static void CreateItem(int clientId, ClientItemCreateModel clim) { using (var sctx = new DataAccess.ShopContext()) { sctx.Set <DataAccess.ClientItem>() .Add(new DataAccess.ClientItem() { ClientId = clientId, Code = clim.Code, Name = clim.Name, Price = clim.Price }); sctx.SaveChanges(); } }
public static void CreateCustomer(int clientId, CustomerCreateModel model) { using (var sctx = new DataAccess.ShopContext()) { sctx.Set <DataAccess.Customer>() .Add(new DataAccess.Customer() { ClientId = clientId, Amount = model.Ammount, Nickname = model.Nickname }); sctx.SaveChanges(); } }
public string GetCode(int clientId, string name) { using (var sctx = new DataAccess.ShopContext()) { var item = sctx.Set <DataAccess.ClientItem>().SingleOrDefault(i => i.Name == name && i.ClientId == clientId); if (item == null) { throw new Exception("No such item in this store: " + name); } return(item.Code); } }
public static string GetCustomer(int clientId, int customerId) { using (var sctx = new DataAccess.ShopContext()) { var curCust = sctx.Set <DataAccess.Customer>() .SingleOrDefault(cust => cust.ClientId == clientId && cust.Id == customerId); if (curCust != null) { return(curCust.ClientId + " :: " + curCust.Id + " :: " + curCust.Amount); } return("failed to find customer: " + customerId); } }
public static ClientItemCreateModel GetItem(int clientId, string code) { using (var sctx = new DataAccess.ShopContext()) { var curItem = sctx.Set <DataAccess.ClientItem>() .SingleOrDefault(item => item.ClientId == clientId && item.Code == code); if (curItem == null) { throw new Exception("There is no such item"); } return(new ClientItemCreateModel() { Code = curItem.Code, Name = curItem.Name, Price = curItem.Price }); } }
public static void UpdateCustomer(int clientId, int customerId, CustomerCreateModel model) { using (var sctx = new DataAccess.ShopContext()) { var curCustomer = sctx.Set <DataAccess.Customer>() .SingleOrDefault(cust => cust.ClientId == clientId && cust.Id == customerId); if (curCustomer == null) { throw new Exception("There is no such Customer"); } curCustomer.Amount = model.Ammount; curCustomer.Nickname = model.Nickname; sctx.SaveChanges(); } }
public static CustomerCreateModel GetItem(int clientId, int customerId) { using (var sctx = new DataAccess.ShopContext()) { var curCustomer = sctx.Set <DataAccess.Customer>() .SingleOrDefault(cust => cust.ClientId == clientId && cust.Id == clientId); if (curCustomer == null) { throw new Exception("There is no such item"); } return(new CustomerCreateModel() { Ammount = curCustomer.Amount, Nickname = curCustomer.Nickname }); } }
public static void UpdateItem(int clientId, string code, ClientItemCreateModel createModel) { using (var sctx = new DataAccess.ShopContext()) { var curItem = sctx.Set <DataAccess.ClientItem>() .SingleOrDefault(item => item.ClientId == clientId && item.Code == code); if (curItem == null) { throw new Exception("There is no such item"); } curItem.Name = createModel.Name; curItem.Code = createModel.Code; curItem.Price = createModel.Price; sctx.SaveChanges(); } }
public void ItemPurchase(int clientId, int customerId, string itemCode) { using (var sctx = new DataAccess.ShopContext()) { var curItem = sctx.Set <DataAccess.ClientItem>().SingleOrDefault(i => i.Code == itemCode); var curCustomer = sctx.Set <DataAccess.Customer>().SingleOrDefault(cust => cust.Id == customerId); if (curItem == null) { throw new Exception("No such Item"); } if (curCustomer == null) { throw new Exception("Invaid customer"); } if (curCustomer.Amount < curItem.Price) { throw new Exception("Not enough money"); } curCustomer.Amount -= curItem.Price; var ii = new DataAccess.CustomerItem() { Name = curItem.Name, CustomerId = customerId, Code = curItem.Code, Price = curItem.Price }; sctx.Set <DataAccess.CustomerItem>().Add(ii); sctx.SaveChanges(); } }