public async Task <string> AddBeers(string query) { TasterBusiness business = new TasterBusiness(); return(await business.AddBeers(query)); }
internal async Task <Result> FinishRoomCreation(FinishRoomSettings.Root request) { try { Room room = context.Rooms.FirstOrDefault(a => a.Code == request.roomCode); if (room == null) { return(new Result(ResultStatus.ERROR, "Room not found!")); } if (room.Pin != request.pin) { return(new Result(ResultStatus.ERROR, "Unautorized")); } if (request.categories.Sum(a => a.maxValue) != 100) { return(new Result(ResultStatus.ERROR, "Review types sum has to be 100")); } if (request.categories.Any(a => a.isNew && (!string.IsNullOrEmpty(a.name) || !string.IsNullOrEmpty(a.abbr)))) { return(new Result(ResultStatus.ERROR, "Your added categories are missing name or abbriviation")); } List <Beverage> beverages = GetBeveragesByIds(request.beers.Select(a => a.id)); TasterBusiness business = new TasterBusiness(); int index = 0; foreach (var beverage in request.beers) { if (!beverages.Any(a => a.Id == beverage.id)) { await business.AddBeer(beverage.id); } room.Room2Beverages.Add(new Room2Beverage() { BeverageId = beverage.id, DisplayOrder = index, FinalScore = 0, IsLocked = true }); index++; } List <ReviewType> reviewtypes = context.ReviewTypes.Where(a => request.categories.Select(b => b.id).Contains(a.Id)).ToList(); index = 0; foreach (var type in request.categories) { if (!reviewtypes.Any(a => a.Id == type.id)) { AddReviewType(new AddNewReviewType() { name = type.name, ipAddress = request.ipAddress, abbr = type.abbr }); reviewtypes.Add(context.ReviewTypes.FirstOrDefault(a => a.Name == type.name)); } room.Room2ReviewTypes.Add(new Room2ReviewType { DisplayOrder = index, MaxValue = type.maxValue, ReviewType = reviewtypes.FirstOrDefault(a => a.Name == type.name) }); index++; } context.SubmitChanges(); return(new Result(ResultStatus.SUCCESS, "Room creation finished")); } catch (Exception ex) { var ravenClient = new RavenClient("https://[email protected]/5524484"); ravenClient.Capture(new SentryEvent(ex)); return(new Result(ResultStatus.ERROR, ex.Message)); } }
public async Task <List <BeerVM> > SearchForBeers(string query, bool force) { TasterBusiness business = new TasterBusiness(); return(await business.SearchUnTapped(query, force)); }