/// <summary>
 /// Cadastro o paciente
 /// </summary>
 /// <param name="pModel"></param>
 public void Cadastra(PacienteCadastro pModel)
 {
     if (!_ServiceUsuario.LoginExiste(pModel.Login, pModel.CpfObjeto.Numero, pModel.TipoUsuario.GetDefaultValue()))
     {
         _PacienteRepository.CadastrarPaciente(pModel);
     }
     else
     {
         throw new Exception($"O login: { pModel }, já existe!");
     }
 }
Ejemplo n.º 2
0
        public IActionResult Cadastro(NutricionistaCadastroVM pModel)
        {
            try
            {
                ViewData[Constantes.ViewDataMensagemErro] = ViewData[Constantes.ViewDataMensagemRetorno] = null;

                /*Verifica se o modelo é valido, de acordo com os atributos da classe passado no parâmetro*/
                if (!ModelState.IsValid)
                {
                    return(View(pModel));
                }

                /*Valida se já existe login cadastrado*/
                if (_ServiceUsuario.LoginExiste(pModel.Login, pModel.CPF, pModel.TipoUsuario.GetDefaultValue()))
                {
                    throw new Exception($"O login: {pModel.Login}, já existe!");
                }

                /*Cadastro o nutricionista*/
                _ServiceNutricionista.CadastrarNutricionista(new NutricionistaCadastro
                                                             (
                                                                 pModel.Nome,
                                                                 pModel.Telefone,
                                                                 Convert.ToInt32(pModel.CRN),
                                                                 pModel.Login,
                                                                 pModel.Senha,
                                                                 new CPF(pModel.CPF, false)
                                                             ));

                /*Escreve uma mensagem de retorno para a tela de Login*/
                ViewData[Constantes.ViewDataMensagemRetorno] = $"Usuário {pModel.Login} cadastrado com sucesso";
                /*Redireciona para a página Index.cshtml da pasta Login*/
                return(RedirectToAction("Index", "Login", new { pMensagemSucesso = ViewData[Constantes.ViewDataMensagemRetorno] }));
            }
            catch (Exception ex)
            {
                /*Escreve a mensagem no objeto de ViewData para ser exibida em tela.*/
                ViewData[Constantes.ViewDataMensagemErro] = ex.Message;
                ModelState.ClearValidationState(nameof(pModel.Login));
                pModel.Login = string.Empty;
                return(View(pModel));
            }
        }