예제 #1
0
        public async Task <IActionResult> Put(int id, [FromBody] BeerViewModel model)
        {
            if (id == 0 || model == null)
            {
                return(BadRequest());
            }

            var result = await this.beerService.UpdateBeerAsync(model.Id, model.Name, model.Abv);

            return(Ok(result));
        }
예제 #2
0
        public async Task <IActionResult> Create(BeerViewModel beer)
        {
            if (ModelState.IsValid)
            {
                var dto = beer.GetDTO();
                await this.beerService.CreateBeerAsync(dto);

                return(RedirectToAction(nameof(Index)));
            }
            return(View(beer));
        }
예제 #3
0
        public async Task <IActionResult> Put(int id, [FromBody] BeerViewModel model)
        {
            var beerName   = model.BeerName;
            var alkByVol   = model.AlcByVol;
            var descr      = model.Description;
            var beerTypeId = model.BeerTypeId;
            var breweryId  = model.BreweryId;

            await this.beerService.UpdateBeerAsync(id, beerName, alkByVol, descr, beerTypeId, breweryId);

            return(Ok());
        }
예제 #4
0
        // GET: Beers/Create
        public async Task <IActionResult> Create()
        {
            var beer      = new BeerViewModel();
            var breweries = await this.breweryService.GetAllBreweriesAsync();

            var styles = await this.styleService.GetAllStylesAsync();

            beer.Breweries = breweries.Select(b => new SelectListItem(b.Name, b.Name)).ToList();
            beer.Styles    = styles.Select(b => new SelectListItem(b.Name, b.Name)).ToList();

            return(View(beer));
        }
예제 #5
0
        public async Task <IActionResult> Create([Bind("Name,ABV,StyleID,CountryID,BreweryID,Rating")] BeerViewModel beer)
        {
            if (ModelState.IsValid)
            {
                var theNewBeer = await this._service.CreateAsync(beer.MapBeerViewToDTO());

                beer = theNewBeer.MapBeerDTOToView();
                return(RedirectToAction(nameof(Index)));
            }

            ViewData["BreweryID"] = new SelectList(this._breweryService.GetAllAsync().Result, "ID", "Name");
            ViewData["CountryID"] = new SelectList(this._countriesService.GetAllAsync().Result, "ID", "Name");
            ViewData["StyleID"]   = new SelectList(this._beerStylesService.GetAllAsync().Result, "ID", "Name");
            return(View(beer));
        }
예제 #6
0
        public async Task <IActionResult> Create([FromBody] BeerViewModel model)
        {
            try
            {
                var beerDto = new BeerDTO(model.BeerName, model.BeerTypeId,
                                          model.BreweryId, (double)model.AlcByVol, model.Description);
                var beer = await this.beerService.CreateBeerAsync(beerDto);

                return(Created("Post", beer));
            }
            catch (Exception)
            {
                throw;
            }
        }
예제 #7
0
        public async Task <IActionResult> Edit(int id, BeerViewModel beer)
        {
            if (id != beer.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                await this.beerService.UpdateBeerAsync(id, beer.Name, beer.Abv);

                return(RedirectToAction(nameof(Index)));
            }
            return(View(beer));
        }
예제 #8
0
        public ActionResult UpdateBeer(BeerViewModel model)
        {
            var response = _beerServices.UpdateBeer(model.Beer);

            if (response.Success)
            {
                var updateBeerModel = new BeerViewModel
                {
                    Beer = response.Beer
                };

                return(RedirectToAction("Beer", new { id = updateBeerModel.Beer.Id }));
            }

            return(View("Error"));
        }
예제 #9
0
        public ActionResult UpdateBeer(string id)
        {
            var response = _beerServices.GetBeer(id);

            if (response.Success)
            {
                var model = new BeerViewModel
                {
                    Beer = response.Beer
                };

                return(View(model));
            }

            return(View("Error"));
        }
예제 #10
0
        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());
            }
        }