/// <summary> /// Metodo de Login /// </summary> /// <returns></returns> public async Task ExecutarLogin() { try { // Carregando Loading = true; OffLoading = false; // Validação if (string.IsNullOrWhiteSpace(Login.Username) || string.IsNullOrWhiteSpace(Login.Password)) { throw new ErrorException(Mensagem.Validacao.UsuarioNaoEncontrato); } // Autenticacao var modelUsu = autorizacaoServico.Autenticar(Login.Username, Login.Password); // Busca perfil do usuario var perfil = await motoristaServico.BuscaPerfilMotorista(); // Usuario autenticado usuarioAutenticado.SetPerfil(perfil); // Salva login await GravaUsuario(); } finally { // Finaliza loading Loading = false; OffLoading = true; } }
public KeyValuePair <bool, TipoContrato> BuscaCorrida() { try { // Busca perfil do usuario var perfil = new PerfilMotoristaModel(); Task.Run(async() => { perfil = await BuscaPerfilMotorista(); }).Wait(); // Se existe diaria if (perfil != null && perfil.idRegistroDiaria != null) { usuarioAutenticado.SetPerfil(perfil); return(new KeyValuePair <bool, TipoContrato>(true, TipoContrato.ContratoLocacao)); } else // Se nao - busca Corrida { // Busca Corrida var corrida = new CorridaAbertaModel(); Task.Run(async() => { corrida = await BuscaCorridaAberta(); }).Wait(); // Corrida if (corrida != null) { // ID Corrida usuarioAutenticado.IDCorridaAtendimento = corrida.ID; // Binding chamadoItem = new ChamadoEncontradoItemViewModel() { NomeCliente = corrida.NomeCliente, Comissao = corrida.Comissao.ToString("C"), DestinoInicial = corrida.EnderecoCompleto }; GlobalVariablesManager.SetApplicationCurrentProperty(GlobalVariablesManager.VariaveisGlobais.DadosCorridaPesquisada, chamadoItem); // Return return(new KeyValuePair <bool, TipoContrato>(true, TipoContrato.ChamadosAvulsos)); } else { usuarioAutenticado.IDCorridaAtendimento = null; return(new KeyValuePair <bool, TipoContrato>(false, TipoContrato.ChamadosAvulsos)); } } } finally { } }