Esempio n. 1
0
        public async Task <IViewComponentResult> InvokeAsync(Guid id)
        {
            var model = new RemoveBarsFromCocktailsViewModel();

            model.Id = id;
            var cocktailDto = await cocktailService.GetCocktailBarsAsync(id);

            model.AllBars = cocktailDto.Bars.Select(c => new SelectListItem(c.Name, c.Name)).ToList();

            return(View(model));
        }
        public async Task <IActionResult> RemoveBars(RemoveBarsFromCocktailsViewModel model)
        {
            if (ModelState.IsValid)
            {
                var cocktailDto = await this.cocktailService.GetCocktailAsync(model.Id);

                await this.cocktailService.RemoveBarsAsync(cocktailDto, model.SelectedBars);

                this.toastNotification.AddSuccessToastMessage("Bars successfuly removed");
                return(RedirectToAction("Details", new { id = cocktailDto.Id }));
            }

            ModelState.AddModelError(string.Empty, ExceptionMessages.ModelError);
            this.toastNotification.AddWarningToastMessage("Bars were not removed");
            return(View(model));
        }