private async Task <bool> TryUpdateDrink(DrinkDto drink) { try { var drinkDbModelToUpdate = await _context.DrinksSet.FindAsync(drink.Id); _context.Entry(drinkDbModelToUpdate).State = EntityState.Detached; var fileRoute = drinkDbModelToUpdate.PhotoPath; drinkDbModelToUpdate = _drinkMapper.ToDbModel(drink); if (!string.IsNullOrEmpty(drink.PhotoPath)) { drinkDbModelToUpdate.PhotoPath = (await _storageService.EditFile( Convert.FromBase64String(PhotoPathHelper.GetBase64String(drink.PhotoPath)), "jpg", "drinks", fileRoute)); } else { drinkDbModelToUpdate.PhotoPath = fileRoute; } _context.Entry(drinkDbModelToUpdate).State = EntityState.Modified; return(true); } catch (Exception) { return(false); } }
private async Task <bool> TryUpdateCocktail(CocktailDto cocktail) { try { var cocktailDbModelToUpdate = await _context.CocktailsSet.FindAsync(cocktail.Id); _context.Entry(cocktailDbModelToUpdate).State = EntityState.Detached; var fileRoute = cocktailDbModelToUpdate.PhotoPath; cocktailDbModelToUpdate = _cocktailMapper.ToDbModel(cocktail); if (!string.IsNullOrEmpty(cocktail.PhotoPath)) { cocktailDbModelToUpdate.PhotoPath = await _storageService.EditFile( Convert.FromBase64String(PhotoPathHelper.GetBase64String(cocktail.PhotoPath)), "jpg", "cocktails", fileRoute); } else { cocktailDbModelToUpdate.PhotoPath = (fileRoute); } _context.Entry(cocktailDbModelToUpdate).State = EntityState.Modified; return(true); } catch (Exception) { return(false); } }
public async Task <ActionResult <DrinkDto> > PostDrink(DrinkDto drink) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (!string.IsNullOrEmpty(drink.PhotoPath)) { drink.PhotoPath = await _storageService.SaveFile( Convert.FromBase64String(PhotoPathHelper.GetBase64String(drink.PhotoPath)), "jpg", "drinks"); } var drinkDbModel = _drinkMapper.ToDbModel(drink); await _context.DrinksSet.AddAsync(drinkDbModel); await _context.SaveChangesAsync(); var createdDrink = _context.DrinksSet.OrderByDescending(e => e.Id).First(); return(CreatedAtAction(nameof(GetDrink), new { id = createdDrink.Id }, _drinkMapper.ToDto(createdDrink))); }
public async Task <ActionResult <CocktailDto> > PostCocktail(CocktailDto cocktail) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (!string.IsNullOrEmpty(cocktail.PhotoPath)) { cocktail.PhotoPath = await _storageService.SaveFile( Convert.FromBase64String(PhotoPathHelper.GetBase64String(cocktail.PhotoPath)), "jpg", "cocktails"); } var cocktailDbModel = _cocktailMapper.ToDbModel(cocktail); await _context.CocktailsSet.AddAsync(cocktailDbModel); await _context.SaveChangesAsync(); var createdCocktail = _context.CocktailsSet.OrderByDescending(e => e.Id).First(); if (cocktail.Ingredients != null) { foreach (var ingredientDto in cocktail.Ingredients) { ingredientDto.CocktailId = createdCocktail.Id; } var ingredientDbModels = _ingredientMapper.ToDbModelList(cocktail.Ingredients); await _context.IngredientsSet.AddRangeAsync(ingredientDbModels); await _context.SaveChangesAsync(); } return(CreatedAtAction(nameof(GetCocktail), new { id = createdCocktail.Id }, _cocktailMapper.ToDto(createdCocktail))); }