public async Task <IActionResult> Login(Login model, string returnUrl) { try { if (!ModelState.IsValid) { throw new UserException("Por favor, informe o usuário e senha!"); } Microsoft.AspNetCore.Identity.SignInResult resultSign = await signInManager.PasswordSignInAsync(model.Email, model.Senha, model.Lembrar, lockoutOnFailure : false); if (!resultSign.Succeeded) { throw new UserException("E-mail e/ou senha não encontrado(s)!"); } if (string.IsNullOrEmpty(returnUrl) || returnUrl.Equals("/")) { int userId = (await userManager.GetUserAsync(User)).Id; List <BranchNetwork> branchNetworks = BranchNetwork.FindByUserId(userId, connection, null); if (branchNetworks.Count == 0) { return(LocalRedirect("~/Management/BranchNetwork/Create?returnUrl=~/Management/BranchNetwork")); } else { return(Redirect(Url.Link("management", new { area = "Management", controller = "BranchNetwork", action = "Index" }))); } } else { return(LocalRedirect(returnUrl)); } } catch (UserException erro) { ViewBag.Mensagem = erro.Message; } catch (Exception erro) { ILogger <ConsoleLogger> logger = loggerFactory.CreateLogger <ConsoleLogger>(); logger.LogError("Exception: " + erro.Message); ViewBag.Mensagem = "Ocorreu um erro inesperado ao verificar o e-mail e senha!"; } return(View()); }
public async Task <IActionResult> Create(Create model) { MySqlTransaction transaction = null; try { int userId = (await UserManager.GetUserAsync(User)).Id; transaction = Connection.BeginTransaction(); var branchNetwork = new BranchNetwork { Name = model.Name }; branchNetwork.Save(Connection, transaction); var branchNetworkUser = new BranchNetworkUser { BranchNetworkId = branchNetwork.Id, UserId = userId }; branchNetworkUser.Save(Connection, transaction); transaction.Commit(); if (string.IsNullOrEmpty(model.ReturnUrl)) { return(LocalRedirect("~/Management/BranchNetwork")); } else { return(LocalRedirect(model.ReturnUrl)); } } catch (BranchNetworkException exception) { transaction?.Rollback(); ViewBag.Message = exception.Message; } catch (Exception) { transaction?.Rollback(); ViewBag.Message = "Ocorreu um erro ao tentar cadastrar a rede"; } return(View(model)); }
public IActionResult Details(int branchNetworkId) { var details = new BranchNetworkDetails(); try { BranchNetwork branchNetwork = BranchNetwork.FindById(branchNetworkId, Connection, null); details.Id = branchNetwork.Id; details.Name = branchNetwork.Name; details.Users = Models.User.FindByBranchNetworkId(branchNetworkId, Connection, null); details.Branches = Branch.FindAllByBranchNetwork(branchNetworkId, Connection, null); } catch (Exception) { } return(View(details)); }
public async Task <IActionResult> Index() { try { int userId = (await UserManager.GetUserAsync(User)).Id; List <BranchNetwork> branchNetworks = BranchNetwork.FindByUserId(userId, Connection, null); if (branchNetworks.Count == 0) { throw new BranchNetworkException("Não existe nenhuma rede vinculada ao seu usuário!"); } var branchNetworkLines = new List <BranchNetworkLine>(); foreach (BranchNetwork branchNetwork in branchNetworks) { branchNetworkLines.Add( new BranchNetworkLine { Id = branchNetwork.Id, Name = branchNetwork.Name, NumberBranches = Branch.FindAllByBranchNetwork(branchNetwork.Id, Connection, null).Count() } ); } return(View(branchNetworkLines)); } catch (BranchNetworkException exception) { ViewBag.Message = exception.Message; } catch (Exception) { ViewBag.Message = "Ocorreu um erro ao listas as redes. Por favor, tente novamente em alguns instantes!"; } return(View()); }