/// <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!"); } }
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)); } }