public async Task <IActionResult> Create(TownInputViewModel model) { if (!this.User.IsInRole(GlobalConstants.AdministratorRoleName)) { return(this.Redirect("/Identity/Account/AccessDenied")); } if (!this.ModelState.IsValid) { var error = new TownError { ErrorMessage = GlobalConstants.TownModelValidationMessаge }; return(this.RedirectToAction("Error", "Town", error)); } bool townExists = await this.townService.CheckIfExistsAsync(model.Name); if (townExists) { var error = new TownError { ErrorMessage = GlobalConstants.TownExistErrorMessage }; return(this.RedirectToAction("Error", "Town", error)); } await this.townService.CreateTownByNameAsync(model.Name); return(this.Redirect("/Town/All")); }
public async Task <IActionResult> Delete(TownDeleteViewModel townDelete) { if (!this.User.IsInRole(GlobalConstants.AdministratorRoleName)) { return(this.Redirect("/Identity/Account/AccessDenied")); } if (!this.ModelState.IsValid) { var error = new TownError { ErrorMessage = GlobalConstants.TownModelValidationMessаge }; return(this.RedirectToAction("Error", "Town", error)); } var dtoModel = TownDeleteHandMapper.Map(townDelete); var isDeleted = await this.townService.DeleteTownAsync(dtoModel); if (!isDeleted) { var error = new TownError { ErrorMessage = GlobalConstants.TownDeleteErrorMessage }; return(this.RedirectToAction("Error", "Town", error)); } return(this.Redirect("/Town/Index")); }
public async Task <IActionResult> Update(TownUpdateGetInputViewModel viewModel) { if (!this.User.IsInRole(GlobalConstants.AdministratorRoleName)) { return(this.Redirect("/Identity/Account/AccessDenied")); } if (!this.ModelState.IsValid) { var error = new TownError { ErrorMessage = GlobalConstants.TownModelValidationMessаge }; return(this.RedirectToAction("Error", "Town", error)); } var dtoInputModel = TownUpdateGetInputModelMapper.Map(viewModel); var dtoOutPutModel = await this.townService.GetTownById(dtoInputModel); var viewOutputModel = TownUpdateGetOutputMapper.Map(dtoOutPutModel); return(this.View(viewOutputModel)); }
public IActionResult Error(TownError error) { return(this.View(error)); }