public Either <Error, int> Insert(FoodInsertModel entity) { try { if (entity == null) { return(new Left <Error, int>(new ArgumentNotSet(nameof(entity)))); } using (var context = _factory.Create()) { var foodEntity = new FoodEntity() { Name = entity.Name, Type = entity.Type, Price = entity.Price, Description = entity.Description, IsInactive = entity.IsInactive, DailyMenuId = entity.DailyMenuId, RestaurantId = entity.RestaurantId, }; var addedEntity = context.Food.Add(foodEntity).Entity; context.SaveChanges(); return(new Right <Error, int>(addedEntity.Id)); } } catch (Exception ex) { return(new Left <Error, int>(new UnknownError(ex.ToString()))); } }
public Either <Error, int> Insert(CustomerInsertModel entity) { try { using (var context = _factory.Create()) { var customerEntity = new CustomerEntity() { Name = entity.Name, GoogleUserId = entity.GoogleUserId, Balance = entity.Balance, LocationId = entity.LocationId, RoleId = entity.RoleId }; var addedEntity = context.Customer.Add(customerEntity).Entity; context.SaveChanges(); return(new Right <Error, int>(addedEntity.Id)); } } catch (Exception ex) { return(new Left <Error, int>(new UnknownError(ex.ToString()))); } }
public Either <Error, int> Insert(OrderInsertModel entity) { try { using (var context = _factory.Create()) { var orderEntity = new OrderEntity() { CustomerId = entity.CustomerId, Date = entity.Date, MealId = entity.MealId, Note = entity.Note, Price = entity.Price, }; var addedEntity = context.Order.Add(orderEntity).Entity; context.SaveChanges(); return(new Right <Error, int>(addedEntity.Id)); } } catch (Exception ex) { return(new Left <Error, int>(new UnknownError(ex.ToString()))); } }
private void SeedPayment() { using (var dc = _factory.Create()) { dc.Payment.Add(new PaymentEntity() { Amount = 2000, CustomerId = 1, }); dc.SaveChanges(); } }
public MealEntity Convert(Meal source, MealEntity destination, ResolutionContext context) { using (var dbContext = _factory.Create()) { destination = new MealEntity { Id = source.Id, Price = source.Price }; destination.Id = source.Id; destination.FoodEntityMealEntities = new List <FoodEntityMealEntities>(); foreach (var food in source.Foods) { var dbFoodMealEntity = dbContext.Meal.FirstOrDefault(m => m.Id == source.Id).FoodEntityMealEntities.SingleOrDefault(fm => fm.FoodEntityId == food.Id); if (dbFoodMealEntity == null) { destination.FoodEntityMealEntities.Add(new FoodEntityMealEntities { FoodEntity = _mapper.Map <FoodEntity>(food), FoodEntityId = food.Id, MealEntityId = source.Id, MealEntity = destination }); } else { destination.FoodEntityMealEntities.Add(dbFoodMealEntity); } } return(destination); } }
public RecipeEntity Convert(Recipe source, RecipeEntity destination, ResolutionContext context) { destination = new RecipeEntity { Id = source.Id, MainCourse = _mapper.Map <FoodEntity>(source.MainCourse), MainCourseId = source.MainCourse.Id, RestaurantId = source.Restaurant.Id, FoodEntityRecipeEntities = new List <FoodEntityRecipeEntity>() }; foreach (var food in source.SideDish) { using (var dbcontext = _factory.Create()) { var fre = dbcontext.Recipe.FirstOrDefault(r => r.Id == source.Id).FoodEntityRecipeEntities.SingleOrDefault(i => i.FoodEntityId == food.Id); if (fre == null) { destination.FoodEntityRecipeEntities.Add(new FoodEntityRecipeEntity { FoodEntity = _mapper.Map <FoodEntity>(food), FoodEntityId = food.Id, RecipeEntity = destination, RecepieEntityId = source.Id }); } else { destination.FoodEntityRecipeEntities.Add(fre); } } } return(destination); }
public Either <Error, PagingResult <Payment> > Query(PaymentQueryModel queryModel) { try { if (queryModel == null) { return(new Left <Error, PagingResult <Payment> >(new ArgumentNotSet(nameof(queryModel)))); } using (var context = _factory.Create()) { var query = context.Payment.AsQueryable(); if (queryModel.Id.HasValue) { query = query.Where(x => x.Id == queryModel.Id); } var total = query.Count(); query = query .Skip((queryModel.Page - 1) * queryModel.Size) .Take(queryModel.Size); var recepieEntities = query.ToList(); var recepies = _mapper.Map <IList <Payment> >(recepieEntities).ToList(); return(new Right <Error, PagingResult <Payment> >(new PagingResult <Payment>(recepies, total))); } } catch (Exception ex) { return(new Left <Error, PagingResult <Payment> >(new UnknownError(ex.ToString()))); } }
public Either <Error, PagingResult <CustomerAliases> > Query(CustomerAliasQueryModel queryModel) { try { if (queryModel == null) { return(new Left <Error, PagingResult <CustomerAliases> >(new ArgumentNotSet(nameof(queryModel)))); } using (var context = _factory.Create()) { var query = context.CustomerAlias.AsQueryable(); if (queryModel.Id != null) { query = query.Where(x => x.Id == queryModel.Id.Value); } var size = queryModel.Size <= QueryConstants.MaxElements ? queryModel.Size : QueryConstants.MaxElements; var total = query.Count(); query = query .Skip((queryModel.Page - 1) * size) .Take(size); var results = query.ToList(); var mapped = _mapper.Map <IList <CustomerAliases> >(results).ToList(); return(new Right <Error, PagingResult <CustomerAliases> >(new PagingResult <CustomerAliases>(mapped, total))); } } catch (Exception ex) { return(new Left <Error, PagingResult <CustomerAliases> >(new UnknownError(ex.ToString()))); } }
protected override void InitializeStorage(IFoodOrderingContextFactory factory, int count) { using (var context = factory.Create()) { var locations = Enumerable.Range(1, count + 6) .Select(x => new LocationEntity() { Id = x, Name = $"Name {x}", }); context.Location.AddRange(locations); var roles = Enumerable.Range(1, count + 6) .Select(x => new RoleEntity() { Id = x, Name = $"Name {x}", }); context.Role.AddRange(roles); var customers = Enumerable.Range(1, count) .Select(x => new CustomerEntity() { Id = x, Balance = x, GoogleUserId = (1000 + x).ToString(), LocationId = x, Name = $"Name {x}", RoleId = x }); context.Customer.AddRange(customers); context.SaveChanges(); } }
protected override void InitializeStorage(IFoodOrderingContextFactory factory, int count) { using (var context = factory.Create()) { var restaurant = new RestaurantEntity() { Name = "testRestaurant" }; var insertedRestauran = context.Restaurant.Add(restaurant).Entity; var dailyMenu = new DailyMenuEntity() { RestaurantId = insertedRestauran.Id }; var foods = Enumerable.Range(1, count).Select(x => new FoodEntity() { Id = x, Name = $"Name {x}", RestaurantId = insertedRestauran.Id }); context.Food.AddRange(foods); context.SaveChanges(); } }
protected override void InitializeStorage(IFoodOrderingContextFactory factory, int count) { using (var context = factory.Create()) { var dailyMenus = Enumerable.Range(1, count).Select(x => new DailyMenuEntity { Id = x, RestaurantId = x }); context.DailyMenu.AddRange(dailyMenus); var restaurant = Enumerable.Range(1, count + 6).Select(x => new RestaurantEntity { Id = x, Name = $"Name {x}" }); context.Restaurant.AddRange(restaurant); var food = Enumerable.Range(1, count + 6).Select(x => new FoodEntity { Id = x, Name = $"Name {x}", Price = x, Description = $"Description {x}", RestaurantId = x }); context.Food.AddRange(food); context.SaveChanges(); } }
public Either <Error, string> GetRole(string googleId) { try { using (var context = _factory.Create()) { var customer = context.Customer.FirstOrDefault(x => x.GoogleUserId == googleId); if (customer == null) { return(new Left <Error, string>(new RecordNotFound($"Record with GoogleUserId='{googleId}' is not found."))); } return(new Right <Error, string>(customer.Role != null ? customer.Role.Name : string.Empty)); } } catch (Exception ex) { return(new Left <Error, string>(new UnknownError(ex.ToString()))); } }
protected override void InitializeStorage(IFoodOrderingContextFactory factory, int count) { using (var context = factory.Create()) { var locations = Enumerable.Range(1, count).Select(x => new LocationEntity() { Id = x, Address = $"Address {x}", Name = $"Name {x}" }); context.Location.AddRange(locations); var customerAlias = Enumerable.Range(1, count).Select(x => new CustomerAliasesEntities { Id = x, Alias = $"Alias {x}", CustomerId = x, RestaurantId = x }); context.CustomerAlias.AddRange(customerAlias); var dailyMenus = Enumerable.Range(1, count).Select(x => new DailyMenuEntity { Id = x, RestaurantId = x }); context.DailyMenu.AddRange(dailyMenus); var restaurant = Enumerable.Range(1, count).Select(x => new RestaurantEntity { Id = x, Name = $"Name {x}" }); context.Restaurant.AddRange(restaurant); var roles = Enumerable.Range(1, count + 6).Select(x => new RoleEntity { Id = x, Name = $"role name {x}" }); context.Role.AddRange(roles); var customers = Enumerable.Range(1, count).Select(x => new CustomerEntity { Id = x, Name = $"Name {x}", LocationId = x, RoleId = x }); context.Customer.AddRange(customers); context.SaveChanges(); } }
protected override void InitializeStorage(IFoodOrderingContextFactory factory, int count) { using (var context = factory.Create()) { var location = new LocationEntity { Id = 1, Name = "location name", Address = "Address" }; context.Location.Add(location); var role = new RoleEntity { Id = 1, Name = "role name", }; context.Role.Add(role); var customers = Enumerable.Range(1, count + 6).Select(x => new CustomerEntity { Id = x, Name = "Customer name ", GoogleUserId = "GoogleUserId", Balance = 99.99m, LocationId = 1, RoleId = 1 }); context.Customer.AddRange(customers); var meals = Enumerable.Range(1, count + 6).Select(x => new MealEntity { Id = x, Price = 3.2m * x }); context.Meal.AddRange(meals); var orders = Enumerable.Range(1, count).Select(x => new OrderEntity { Id = x, CustomerId = x, Date = _dateTime.Now().AddHours(x), MealId = x, Note = "note ", Price = 10.5m * x }); context.Order.AddRange(orders); context.SaveChanges(); } }
public Either <Error, int> Insert(RestaurantInsertModel entity) { try { using (var context = _factory.Create()) { var restaurantEntity = new RestaurantEntity() { Name = entity.Name, }; var addedEntity = context.Restaurant.Add(restaurantEntity).Entity; context.SaveChanges(); return(new Right <Error, int>(addedEntity.Id)); } } catch (Exception ex) { return(new Left <Error, int>(new UnknownError(ex.ToString()))); } }
public Either <Error, int> Insert(DailyMenuInsertModel entity) { try { using (var context = _factory.Create()) { var dailyMenuEntity = new DailyMenuEntity { RestaurantId = entity.RestaurantId, Foods = entity.Foods.Select(food => context.Food.Find(food.Id)).ToList() }; var addedEntity = context.DailyMenu.Add(dailyMenuEntity).Entity; context.SaveChanges(); return(new Right <Error, int>(addedEntity.Id)); } } catch (Exception ex) { return(new Left <Error, int>(new UnknownError(ex.ToString()))); } }
public Either <Error, int> Insert(LocationInsertModel entity) { try { using (var context = _factory.Create()) { var locationEntity = new LocationEntity() { Name = entity.Name, Address = entity.Address }; var addedEntity = context.Location.Add(locationEntity).Entity; context.SaveChanges(); return(new Right <Error, int>(addedEntity.Id)); } } catch (Exception ex) { return(new Left <Error, int>(new UnknownError(ex.ToString()))); } }
public Either <Error, int> Insert(PaymentInsertModel entity) { try { using (var context = _factory.Create()) { var paymentEntity = new PaymentEntity() { Amount = entity.Amount, CustomerId = entity.CustomerId }; var addedEntity = context.Payment.Add(paymentEntity).Entity; context.SaveChanges(); return(new Right <Error, int>(addedEntity.Id)); } } catch (Exception ex) { return(new Left <Error, int>(new UnknownError(ex.ToString()))); } }
public Either <Error, int> Insert(MealInsertModel entity) { try { using (var context = _factory.Create()) { var mealEntity = new MealEntity { Price = entity.Price, FoodEntityMealEntities = entity.Foods.Select(x => new FoodEntityMealEntities { FoodEntityId = x }).ToList(), }; var addedEntity = context.Add(mealEntity).Entity; context.SaveChanges(); return(new Right <Error, int>(addedEntity.Id)); } } catch (Exception ex) { return(new Left <Error, int>(new UnknownError(ex.ToString()))); } }
protected override void InitializeStorage(IFoodOrderingContextFactory factory, int count) { using (var context = factory.Create()) { var locations = Enumerable.Range(1, count).Select(x => new RestaurantEntity() { Id = x, Name = $"Name {x}" }); context.Restaurant.AddRange(locations); context.SaveChanges(); } }
public Either <Error, int> Insert(CustomerAliasInsertModel entity) { try { using (var context = _factory.Create()) { var customerAliases = new CustomerAliasesEntities() { Alias = entity.Alias, CustomerId = entity.CustomerId, RestaurantId = entity.RestaurantId }; var addedEntity = context.CustomerAlias.Add(customerAliases).Entity; context.SaveChanges(); return(new Right <Error, int>(addedEntity.Id)); } } catch (Exception ex) { return(new Left <Error, int>(new UnknownError(ex.ToString()))); } }
public Either <Error, PagingResult <Order> > GetAllOrdersForRestaurant(int restaruntId, int page, int size) { try { using (var context = _factory.Create()) { var restarurantMeals = context.Meal.SelectMany(x => x.FoodEntityMealEntities.Where(a => a.FoodEntity.RestaurantId == restaruntId) .Select(a => a.MealEntityId)); var query = context.Order.Where(o => restarurantMeals.Contains(o.MealId)); var total = query.Count(); var results = query.Skip((page - 1) * size) .Take(size); var mapped = _mapper.Map <IList <Order> >(results).ToList(); return(new Right <Error, PagingResult <Order> >(new PagingResult <Order>(mapped, total))); } } catch (Exception ex) { return(new Left <Error, PagingResult <Order> >(new UnknownError(ex.ToString()))); } }
protected override void InitializeStorage(IFoodOrderingContextFactory factory, int count) { using (var context = factory.Create()) { context.Restaurant.Add(new RestaurantEntity() { Id = 1, Name = "Test restaurant" }); var foods = Enumerable.Range(1, count).Select(x => new FoodEntity() { Id = x, Name = $"Name {x}", Description = $"Description {x}", Price = x, Type = FoodType.MAIN_COURSE, RestaurantId = 1 }); context.Food.AddRange(foods); var meals = Enumerable.Range(1, count).Select(x => new MealEntity { Id = x, Price = x, FoodEntityMealEntities = new List <FoodEntityMealEntities> { new FoodEntityMealEntities { FoodEntityId = x } } }); context.Meal.AddRange(meals); context.SaveChanges(); } }
public Either <Error, PagingResult <Food> > Query(FoodQueryModel queryModel) { try { if (queryModel == null) { return(new Left <Error, PagingResult <Food> >(new ArgumentNotSet(nameof(queryModel)))); } using (var context = _factory.Create()) { var query = context.Food.AsQueryable(); if (queryModel.Id != null) { query = query.Where(x => x.Id == queryModel.Id.Value); } if (queryModel.RestaurantId != null) { query = query.Where(x => x.RestaurantId == queryModel.RestaurantId.Value); } var total = query.Count(); query = query .Skip((queryModel.Page - 1) * queryModel.Size) .Take(queryModel.Size); var results = query.ToList(); var mapped = _mapper.Map <IList <Food> >(results).ToList(); return(new Right <Error, PagingResult <Food> >(new PagingResult <Food>(mapped, total))); } } catch (Exception ex) { return(new Left <Error, PagingResult <Food> >(new UnknownError(ex.ToString()))); } }
public FoodEntity Convert(Food source, FoodEntity destination, ResolutionContext context) { using (var dbContext = _factory.Create()) { destination = new FoodEntity { Id = source.Id, Name = source.Name, Type = source.Type, Price = source.Price, Description = source.Description, IsInactive = source.IsInactive, RestaurantId = source.RestaurantId, FoodEntityMealEntity = new List <FoodEntityMealEntities>(), FoodEntityRecipeEntities = new List <FoodEntityRecipeEntity>() }; destination.Restaurant = dbContext.Restaurant.Find(destination.RestaurantId); destination.FoodEntityMealEntity = dbContext.Food.Where(fme => fme.Id == source.Id).SelectMany(x => x.FoodEntityMealEntity).ToList(); destination.FoodEntityRecipeEntities = dbContext.Recipe.Where(fre => fre.Id == source.Id).SelectMany(x => x.FoodEntityRecipeEntities).ToList(); return(destination); } }
protected override void InitializeStorage(IFoodOrderingContextFactory factory, int count) { using (var context = factory.Create()) { context.Role.Add(new RoleEntity() { Id = 1, Name = "Test Role" }); context.Location.Add(new LocationEntity() { Id = 1, Name = "Test location" }); var customers = Enumerable.Range(1, count + 6).Select(x => new CustomerEntity() { Id = x, Name = $"Name {x}", LocationId = 1, RoleId = 1 }); context.Customer.AddRange(customers); var locations = Enumerable.Range(1, count).Select(x => new PaymentEntity() { Id = x, Amount = x, CustomerId = x }); context.Payment.AddRange(locations); context.SaveChanges(); } }
protected override void InitializeStorage(IFoodOrderingContextFactory factory, int count) { using (var context = factory.Create()) { var restaurants = Enumerable.Range(1, count + 6) .Select(x => new RestaurantEntity() { Name = "Restaurant name " + x }); context.Restaurant.AddRange(restaurants); context.SaveChanges(); var foods = Enumerable.Range(1, count + 6).Select(x => new FoodEntity() { Name = "mainFood" + x, Description = "Description" + x, Price = x * 100, RestaurantId = 1 }); context.Food.AddRange(foods); context.SaveChanges(); } }