// GET: Beers/Details/5 //[Route("{id}")] public async Task <IActionResult> Details(int id) { if (id == 0) { return(NotFound()); } try { var beerDTO = await beerService.GetBeerAsync(id); var model = new BeerViewModel(beerDTO.Id, beerDTO.BeerName, beerDTO.AlcByVol, beerDTO.Description, beerDTO.BeerType, beerDTO.BeerTypeId, beerDTO.Brewery, beerDTO.BreweryId, beerDTO.Reviews, beerDTO.AvgRating, beerDTO.DateUnlisted); var imgPath = beerDTO.ImgPath; var absPath = _env.WebRootPath + imgPath; if (!System.IO.File.Exists(absPath)) { imgPath = @"\Images\Beer\PlaceHolder.png"; } ViewBag.Imagepath = imgPath; return(View(model)); } catch (Exception) { return(NotFound()); } }
public async Task <IActionResult> AddRating(int beerId, [FromBody] AddBeerRatingDto ratingDto) { if (!await _service.IfBeerExistAsync(beerId)) { return(NotFound()); } var userLogged = int.Parse(HttpContext.User.Identity.Name); var userRating = await _service.GetBeerRaitingForUserAsync(userLogged, beerId); if (userRating == null) { var result = await _service.AddBeerRatingAsync(userLogged, beerId, ratingDto); var beer = await _beerService.GetBeerAsync(beerId); var updatedBeer = new SaveBeerDto(); updatedBeer.Name = beer.Name; updatedBeer.AvatarUrl = beer.AvatarUrl; updatedBeer.BeerTypeId = beer.BeerType.Id; updatedBeer.BreweryId = beer.Brewery.Id; updatedBeer.Description = beer.Description; updatedBeer.Percentage = beer.Percentage; if (beer.AverageRating == 0) { updatedBeer.AverageRating = (beer.AverageRating + ratingDto.Average); } else { updatedBeer.AverageRating = (beer.AverageRating + ratingDto.Average) / 2; } var updateResult = await _beerService.UpdateBeer(beerId, updatedBeer); if (!updateResult) { return(BadRequest("Niepowodzenie :(")); } return(Ok(result)); } return(BadRequest("Juz dodałeś ocenę")); }
public async Task <IActionResult> GetBeer(int id) { var beer = await _service.GetBeerAsync(id); if (beer == null) { return(NotFound()); } return(Ok(beer)); }
public async Task <IActionResult> Get(int id) { try { var beerDTO = await beerService.GetBeerAsync(id); var model = new BeerViewModel(beerDTO.Id, beerDTO.BeerName, beerDTO.AlcByVol, beerDTO.Description, beerDTO.BeerType, beerDTO.BeerTypeId, beerDTO.Brewery, beerDTO.BreweryId); return(Ok(model)); } catch (Exception) { return(NotFound()); } }
//[Route("{id}")] public async Task <IActionResult> Edit(int id) { if (id == 0) { return(NotFound()); } try { var brDTO = await reviewService.GetReviewAsync(id); var bDTO = await beerService.GetBeerAsync(brDTO.BeerId); var model = new BeerReviewEditViewModel(brDTO.Id, brDTO.RMessage, brDTO.User, bDTO.Id, bDTO.BeerName, bDTO.AlcByVol, bDTO.Description, bDTO.BeerType, bDTO.Brewery, bDTO.AvgRating, brDTO.ReviewedOn, brDTO.DeletedOn); return(View(model)); } catch (Exception) { return(NotFound()); } }