Exemplo n.º 1
0
        public ActionResult Create()
        {
            GerarViewsBagsDeSelect();
            ViewBag.Novo = true;

            var model = new RegistrarVM();

            model.Senha = GerarSenha();

            return(View("Create", model));
        }
Exemplo n.º 2
0
        public IdentityResult AdicionarUsuario(RegistrarVM model)
        {
            try
            {
                var pessoa = new Pessoa(
                    model.Id, model.Nome, model.Email, null, null, null,
                    model.CPF, null, null, null, null, null);

                BeginTransaction();

                manterPessoasServices.CriarPessoa(pessoa);

                var resultCriarPessoa = SaveChanges();
                var criouPessoa       = resultCriarPessoa > 0;

                if (!criouPessoa)
                {
                    RollbackTransaction();
                    return(IdentityResultFailed("Pessoa", "Ocorreu um erro ao criar a pessoa"));
                }

                // criação usuário
                var user = new AppUser(model.Id, model.Email, model.AcessoDiasDaSemana, model.Ativo, model.TrocarSenha);

                var resultCriarUsuario = userManager.CreateAsync(user, model.Senha).Result;

                if (resultCriarUsuario.Succeeded)
                {
                    controleAcessoUsuarioServices.AtualizarNivelDeAcessoUsuario(model.Id, model.NiveisSelecionados);
                    SaveChanges();

                    CommitTransaction();
                }
                else
                {
                    RollbackTransaction();
                }

                return(resultCriarUsuario);
            }
            catch (Exception ex)
            {
                RollbackTransaction();
                return(IdentityResultFailed("", ex.Message));
            }
        }
Exemplo n.º 3
0
        public async Task <ActionResult> Create(RegistrarVM model)
        {
            if (!ModelState.IsValid)
            {
                GerarViewsBagsDeSelect();
                return(View(model));
            }

            var result = controleDeAcessoServices.AdicionarUsuario(model);

            if (!result.Succeeded)
            {
                AddErrors(result);
                return(View(model));
            }

            return(RedirectToAction("Index"));
        }