public async Task <IActionResult> SaveOrder([FromBody] OrderRequest request) { var employeeId = int.Parse(User.FindFirstValue("id")); var ingredients = await _drinkService.GetDrinkIngredientByIdAsync(request.DrinkId); var drinkRequest = new DrinkRequest( ingredients.Select(i => new DrinkRequest.Ingredient( i.Ingredient.Name, request.GetIngredientAmountOrDefault(i.DrinkIngredientId, i.Amount) )), request.Mug ); await _coffeeMachine.MakeDrink(drinkRequest); await _preferenceService.SavePreferenceAsync(new PreferenceDto { EmployeeId = employeeId, DrinkId = request.DrinkId, Amounts = request.Amounts, Mug = request.Mug }); return(Ok(true)); }
public override Task <DrinkReply> MakeDrink(DrinkRequest request, ServerCallContext context) { var drink = Domain.Drink.MakeDrink((Domain.DrinkType)request.Type, (Domain.DrinkFlavor)request.Flavor, (Domain.DrinkSize)request.Size); return(Task.FromResult(new DrinkReply { DrinkId = drink.Id.ToString() })); }
public async Task <Drink> GetDrinkById(int drinkId) { var requestParams = new DrinkRequest { UserId = "test", DrinkId = drinkId }; var result = await ServiceProvider.Client.getDrinkByIdAsync(requestParams); return(result); }
private static IRestResponse PostDrinks(DrinkRequest drinkRequest) { var client = new RestClient("https://dryck.co/api/1.0/units/collector1/drinks"); var request = new RestRequest(Method.POST); request.AddHeader("content-type", "application/x-www-form-urlencoded"); request.AddParameter("application/x-www-form-urlencoded", $"item={drinkRequest.Drinks.Name}&user={drinkRequest.User}&quantity={drinkRequest.Drinks.Quantity}", ParameterType.RequestBody); var response = client.Execute(request); return(response); }
public Domain.Models.Response AddDrinks(DrinkRequest drinkRequest) { var response = PostDrinks(drinkRequest); if (!response.IsSuccessful) { return(new Response($"Tyvärr kunde jag inte lägga till {drinkRequest.Drinks.Quantity} stycken {drinkRequest.Drinks.Quantity}.")); } var postDrinkResponse = SimpleJson.SimpleJson.DeserializeObject <PostDrinkResponse>(response.Content); return(new Response($"Bra där! Nu finns det {postDrinkResponse.quantity} av {postDrinkResponse.item}.")); }
public Domain.Models.Response TakeDrinks(DrinkRequest drinkRequest) { var response = PostDrinks(drinkRequest); if (!response.IsSuccessful) { return(new Response("Kunde tyvärr inte servera dig.")); } var postDrinkResponse = SimpleJson.SimpleJson.DeserializeObject <PostDrinkResponse>(response.Content); return(new Response($"Njut av drycken nu. Så du vet återstår det nu {postDrinkResponse.quantity} av {postDrinkResponse.item}.")); }
public void TakeDrink_HappyCase() { var drinkRequest = new DrinkRequest { Drinks = new Drink { Name = "Pepsi Max", Quantity = 1 }, User = "******" }; _sut.TakeDrinks(drinkRequest); }
public Response GetResult(DrinkRequest request) { switch (request.EnumType) { case EnumType.ADD: return(AddDrinks(request)); case EnumType.TAKE: return(TakeDrinks(request)); case EnumType.STATUS: return(GetDrinkStatus()); default: return(new Response("Hittar inte vad du vill göra. Försök igen.")); } }
public Response AddDrink(DrinkRequest drinkRequest) { return(_repository.AddDrinks(drinkRequest)); }
public Response TakeDrink(DrinkRequest drinkRequest) { drinkRequest.Drinks.Quantity = -drinkRequest.Drinks.Quantity; return(_repository.TakeDrinks(drinkRequest)); }
private Response TakeDrinks(DrinkRequest request) { return(_service.TakeDrink(request)); }
private Response AddDrinks(DrinkRequest request) { return(_service.AddDrink(request)); }