public UsuarioLogin LoginPaciente(UsuarioPaciente usuarioPaciente) { using (InoBD db = new InoBD()) { PacienteAfiliacion paciente = this._gestorDePacientes.ListarPacientePorHcDni(new PacientePorHcDni { NroHistoriaClinica = null, NroDocumento = usuarioPaciente.NroDocumento, Temporal = false }); UsuarioLogin usuarioGeneral = null; if (paciente != null && paciente.Correo == usuarioPaciente.Correo) { string[] NombreCompleto = paciente.Paciente.Split(','); var Roles = db.Empleados.Find(usuarioPaciente.IdEmpleado).Roles.Select(x => Mapper.Map <RolGeneral>(x)).ToList(); usuarioGeneral = new UsuarioLogin { IdEmpleado = usuarioPaciente.IdEmpleado, Usuario = "", Nombres = NombreCompleto[1].Trim(), ApellidoPaterno = NombreCompleto[0].Split(' ')[0], LoginEstado = false, Roles = Roles }; } return(usuarioGeneral); } }
public RespuestaDeLogin LoginPaciente(UsuarioPaciente usuarioPaciente) { RespuestaDeLogin respuestaDeLogin = new RespuestaDeLogin(); UsuarioLogin respuestaLogin = this._gestorDeUsuarios.LoginPaciente(usuarioPaciente); if (respuestaLogin == null) { respuestaDeLogin.FueExitosa = false; respuestaDeLogin.Mensaje = "Verifique su número de documento y correo electrónico."; } else { if (respuestaLogin.IdEmpleado == 0) { respuestaDeLogin.FueExitosa = false; respuestaDeLogin.Mensaje = "Usted no tiene permisos para ingresar a esta aplicación."; } else { if (!respuestaLogin.LoginEstado) { UsuarioLogin usuarioConModulos = _gestorDeUsuarios.ObtenerMenu(respuestaLogin); respuestaDeLogin.FueExitosa = true; respuestaDeLogin.Token = this._gestorDeToken.GenerarToken(respuestaLogin); } else { respuestaDeLogin.FueExitosa = false; respuestaDeLogin.Mensaje = "El usuario ya se encuentra logueado en otra máquina."; } } } return(respuestaDeLogin); }