Пример #1
0
        public IActionResult CadastrarPaciente(PacienteStandaloneViewModel pacienteModel)
        {
            try
            {
                LoginViewModel login = new LoginViewModel();

                PacienteViewModel paciente = PacienteRepository.RetornarPacienteViewModel(pacienteModel);

                Usuarios usuario = UsuarioRepository.BuscarPorEmail(login);

                if (paciente.Paciente.DataNascimento.Date > DateTime.Now.Date)
                {
                    return(BadRequest());
                }

                UsuarioRepository.CadastrarPaciente(paciente);

                return(Ok());
            }
            catch (Exception ex)
            {
                return(BadRequest(new
                {
                    mensagem = "Erro: " + ex
                }));
            }
        }
Пример #2
0
        [Authorize(Roles = "Administrador")]//Determina qual tipo de usuário pode utilizar esse Método
        public IActionResult CadastrarCliente(ClienteStandaloneViewModel clientemModel)
        {
            try                                                                                       // Tenta realizar as ações abaixo
            {
                LoginViewModel login = new LoginViewModel();                                          //Instancia Login view Model armazenando numa variável chamada login

                ClienteViewModel cliente = ClienteRepository.RetornarClienteViewModel(clientemModel); // cria uma variável do tipo ClienteViewModel com o nome cliente

                Usuarios usuario = UsuarioRepository.BuscarPorEmail(login);                           // cria uma variável do tipo Usuários e usa o metodo BuscarPorEmail para encontrar as credenciais no banco de dados

                if (cliente.Cliente.DataNascimento.Date > DateTime.Now.Date)                          // Verifica se a data de nascimento informada no formulário de cadastro não é maior do que a data atual
                {
                    return(BadRequest());                                                             //retorna 400 Bad Request
                }

                UsuarioRepository.CadastrarCliente(cliente); // Cadastra o cliente usando o método CadastrarCliente

                return(Ok());                                //retorna 200 Ok
            }
            catch (Exception ex)                             //Armazena um erro caso as instruções acima não consigam ser executadas armazenando na variável ex do tipo
            {
                return(BadRequest(new                        //Criando e retornando a mensagem de erro que será enviada
                {
                    mensagem = "Erro: " + ex                 // Inserindo erro na mensagem
                }));
            }
        }
Пример #3
0
        public ActionResult Cadastrar(Usuario user)
        {
            try
            {
                if ((_usuarioRepository.BuscarPorEmail(user.Email) != null))
                {
                    return(StatusCode(303, "Email existente "));
                }
                if (_usuarioRepository.BuscarPorApelido(user.Apelido) != null)
                {
                    return(StatusCode(303, "Apelido existente "));
                }

                _usuarioRepository.Cadastrar(user);
                return(StatusCode(201, "Usuario criado"));
            }
            catch (Exception erro)
            {
                return(BadRequest(erro));
            }
        }
    public ActionResult Login(LoginViewModel loginModel)
    {
        var usuarioRepository = new UsuarioRepository(db);

        //Busca o usuario por meio do repositorio passando o email
        var user = usuarioRepository.BuscarPorEmail(loginModel.Email);

        //Verifica se encontrou o usuario e se a senha cofere
        if (user != null && user.HashSenha == GerarHash(loginModel.Senha))
        {
            if (user.FlagSenhaTemp == "S")
            {
                CriaPerfil(user, "SenhaTemporaria");

                return(RedirectToAction("RedefinirSenha", new { UsuarioId = user.UsuarioId }));
            }
            else
            {
                string perfil = "Comum";
                if (user.Administrador.Count > 0)
                {
                    perfil = "Administrador";
                }
                else if (user.ALUNO.Count > 0)
                {
                    perfil = "ALUNO";
                }
                else if (user.PROFESSOR.Count > 0)
                {
                    perfil = "PROFESSOR";
                }

                CriaPerfil(user, perfil);

                if (user.Administrador.Count > 0)
                {
                    return(RedirectToAction("Cadastramentos", "Home"));
                }
                if (user.ALUNO.Count > 0)
                {
                    return(RedirectToAction("Index", "Home"));
                }
                return(RedirectToAction("Listagem", "PROFMATERIATURMA"));
            }
        }
        else
        {
            ModelState.AddModelError("Senha", "A Senha não confere");
            ModelState.AddModelError(string.Empty, "E-mail ou senha inválidos");
            return(View(loginModel));
        }
    }