Ejemplo n.º 1
0
        public Task EditRecipe(RecipeDetailsDTO recipe)
        {
            var oldRecipeIndex = _recipes.FindIndex(r => r.Id == recipe.Id);

            _recipes[oldRecipeIndex] = recipe;
            return(Task.CompletedTask);
        }
Ejemplo n.º 2
0
        public RecipeDetailsViewModel(RecipeDetailsDTO model) : base(model)
        {
            Model = model;

            Tags        = new ObservableCollection <TagViewModel>(Model.Tags.ConvertAll(t => new TagViewModel(t)));
            Ingredients = new ObservableCollection <IngredientViewModel>(Model.Ingredients.ConvertAll(i => new IngredientViewModel(i)));
            Steps       = new ObservableCollection <StepViewModel>(Model.Steps.ConvertAll(s => new StepViewModel(s)));
        }
Ejemplo n.º 3
0
        public async Task <RecipeDetailsDTO> GetAsync(Guid id)
        {
            RecipeDetailsDTO recipeDetails = null;

            if (_environment.IsProduction())
            {
                _logger.LogInformation("(GetAsync) in RecipesRepository. ID :" + id);
            }

            using (SqlConnection connection = new SqlConnection(_connectionString))
                using (SqlCommand cmd = new SqlCommand())
                {
                    cmd.Connection  = connection;
                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText = _selectByIdQuery;
                    cmd.Parameters.AddWithValue("@id", id);

                    try
                    {
                        connection.Open();

                        using (SqlDataReader reader = await cmd.ExecuteReaderAsync())
                        {
                            if (reader.HasRows)
                            {
                                recipeDetails = new RecipeDetailsDTO();
                                while (reader.Read())
                                {
                                    recipeDetails.Name        = reader.GetString(0);
                                    recipeDetails.Ingredients = reader.GetString(1).XmlDeserializeFromString <List <Ingredient> >();
                                    recipeDetails.Description = reader.GetString(2);
                                }
                            }
                            else
                            {
                                _logger.LogInformation("No rows found.");
                            }
                        }
                    }
                    catch (Exception e)
                    {
                        _logger.LogError(e.Message.ToString(), "Error Message");
                    }
                    if (connection.State == ConnectionState.Open)
                    {
                        connection.Close();
                    }
                }
            return(recipeDetails);
        }
Ejemplo n.º 4
0
        public async Task <ActionResult <Recipe> > GetRecipe([FromRoute] string Id)
        {
            string baseUrl = $"{Request.Scheme}://{Request.Host.ToUriComponent()}";
            var    recipe  = await _context.Recipes
                             .Include(r => r.Ingredients)
                             .Include(r => r.Steps)
                             .FirstOrDefaultAsync(x => x.Id == Id);

            if (recipe == null)
            {
                return(NotFound());
            }
            var recipeDTO = new RecipeDetailsDTO(recipe, baseUrl);

            return(Ok(recipeDTO));
        }
Ejemplo n.º 5
0
 public Task AddRecipeToCart(RecipeDetailsDTO recipe)
 {
     _cart.Add(recipe.Ingredients);
     return(Task.CompletedTask);
 }
Ejemplo n.º 6
0
 public Task DeleteRecipe(RecipeDetailsDTO recipe)
 {
     _recipes.Remove(GetRecipe(recipe.Id).Result);
     return(Task.CompletedTask);
 }
Ejemplo n.º 7
0
 public Task AddRecipe(RecipeDetailsDTO recipe)
 {
     _recipes.Add(recipe);
     return(Task.CompletedTask);
 }
Ejemplo n.º 8
0
 public async Task AddRecipeToCart(RecipeDetailsDTO recipe)
 {
     await _recipesApiHelper.PostAsync($"cart/{recipe.Id}");
 }
Ejemplo n.º 9
0
 public async Task DeleteRecipe(RecipeDetailsDTO recipe)
 {
     await _recipesApiHelper.DeleteAsync($"recipes/{recipe.Id}");
 }
Ejemplo n.º 10
0
 public async Task EditRecipe(RecipeDetailsDTO recipe)
 {
     await _recipesApiHelper.PutAsync($"recipes/{recipe.Id}", recipe);
 }
Ejemplo n.º 11
0
 public async Task AddRecipe(RecipeDetailsDTO recipe)
 {
     await _recipesApiHelper.PostAsync("recipes", recipe);
 }