/// <summary> /// DEVUELVE EL ADMINISTRATIVO CON EL SOLICITADO /// </summary> /// <param name="id"></param> /// <returns>ADMINISTRATIVO</returns> public async Task<Administrativo>getAdministrativo(string id) { Administrativo administrativo = null; if (id == null) { throw new MensajeException("Id de usuario inexistente"); } else { administrativo = await DBRepositoryMongo<Administrativo>.GetItemAsync(id, "Administrativos"); administrativo = administrativo.Desencriptar(administrativo); return administrativo; } }
/// <summary> /// devuelve el administrativo o el cliente si lo puede validar o si no devuelve null /// </summary> /// <param name="administrativo"></param> /// <param name="pass"></param> /// <returns>el administrativo o cliente con las credenciales solicitadas</returns> public async Task<Usuario> Login(string administrativo, string pass) { MensajeException mensajeError = new MensajeException("Usuario y/o contraseña incorrecta"); Usuario salida = null; try { Administrativo user = await DBRepositoryMongo<Administrativo>.Login(Seguridad.Encriptar(administrativo), "Administrativos"); if (user == null) { Cliente cliente = await DBRepositoryMongo<Cliente>.Login(Seguridad.Encriptar(administrativo), "Clientes"); if (cliente != null) { cliente = cliente.Desencriptar(cliente); if (cliente.Password == pass) { salida = cliente; } else { throw mensajeError; } } else { throw new MensajeException("Usuario incorrecto"); } } else { user = user.Desencriptar(user); if (user.Password == pass) { salida = user; } else { throw mensajeError; } } return salida; }catch(MensajeException msg) { throw msg; } }