예제 #1
0
        // GET: Funcionarios/Delete/5
        public async Task <IActionResult> Delete(int id)
        {
            Funcionario       f = _funcionarioDAO.BuscarPorId(id);
            FuncionarioLogado funcionarioLogado =
                await _userManager.FindByEmailAsync(f.Email);

            IdentityResult result =
                await _userManager.DeleteAsync(funcionarioLogado);

            if (result.Succeeded)
            {
                _funcionarioDAO.Excluir(id);
            }
            return(RedirectToAction("Index"));
        }
예제 #2
0
        public async Task <IActionResult> Create(Funcionario f)
        {
            if (ModelState.IsValid)
            {
                // funcionario.CriadoEm = DateTime.Now;
                // _funcionarioDAO.Cadastrar(funcionario);


                FuncionarioLogado uLogado = new FuncionarioLogado
                {
                    UserName = f.Email,
                    Email    = f.Email
                };

                IdentityResult result =
                    await _userManager.CreateAsync(uLogado, f.Senha);

                if (result.Succeeded)
                {
                    //Token de confirmação do email
                    string token = await
                                   _userManager.GenerateEmailConfirmationTokenAsync(uLogado);

                    //Autenticação do usuário
                    await _signInManager.
                    SignInAsync(uLogado, isPersistent : false);

                    if (_funcionarioDAO.Cadastrar(f))
                    {
                        return(RedirectToAction("Index"));
                    }
                    ModelState.AddModelError("", "Esse e-mail já está sendo usado!");
                }
                AdicionarErros(result);
                // return RedirectToAction(nameof(Create));
            }
            return(View(f));
        }