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 { } }
//public List<EsperaOcorrencia> TempoDeEspera { get; set; } public void SetPerfil(PerfilMotoristaModel perfil) { Instance.IDProfissional = perfil.idColaboradorEmpresaSistema; Instance.Nome = perfil.NomeCompleto; Instance.Tipo = perfil.TipoProfissional; Instance.Contrato = perfil.idRegistroDiaria == null ? BHJet_Enumeradores.TipoContrato.ChamadosAvulsos : BHJet_Enumeradores.TipoContrato.ContratoLocacao; Instance.IDDiaria = perfil.idRegistroDiaria; Instance.IDCorridaAtendimento = perfil.idCorrida; if (Instance.Contrato == TipoContrato.ChamadosAvulsos && Instance.IDCorridaAtendimento != null) { Instance.StatusAplicatico = StatusAplicativoEnum.Atendimento; } else if (Instance.Contrato == TipoContrato.ContratoLocacao) { Instance.StatusAplicatico = StatusAplicativoEnum.Diarista; } }