Ejemplo n.º 1
0
        /// <summary>
        /// Confirma presença para a lista de alunos
        /// </summary>
        /// <param name="idAluno">array com id dos alunos presentes</param>
        /// <param name="idEvento">id do evento</param>
        /// <returns>retorna um bool, dizendo se foi salvo ou não</returns>
        public bool AdicionaPresenca(int[] idAluno, int idEvento, string idUsuario)
        {
            Evento      ev = db.Evento.Find(idEvento);
            Funcionario f  = db.Funcionario.Where(x => x.IdUsuario == idUsuario && (x.Permissao == EnumPermissaoUsuario.coordenador || x.Permissao == EnumPermissaoUsuario.professor)).FirstOrDefault();

            Chamada c = GetChamada(idEvento, DateTime.Now.Date);

            c.Presenca.Clear();

            if (idAluno == null)
            {
                return(db.SaveChanges() > 0);
            }

            foreach (AlunoEvento ae in ev.AlunoEvento)
            {
                if (idAluno.Contains(ae.IdAluno))
                {
                    ae.QuantidadePresenca++;
                    Presenca p = new Presenca();
                    p.IdAluno     = ae.IdAluno;
                    p.IdEvento    = idEvento;
                    p.Data        = DateTime.Now.Date;
                    p.IdProfessor = f.IdFuncionario;
                    p.IdChamada   = c.IdChamada;
                    ae.Presenca.Add(p);
                }
            }

            return(db.SaveChanges() > 0);
        }
Ejemplo n.º 2
0
        private decimal CalculoValorMinutoTotal(Chamada chamada)
        {
            var percentualExcedente = 10.0 / 100.0;
            var valorminutototal    = chamada.ValorMinuto + (chamada.ValorMinuto * decimal.Parse(percentualExcedente.ToString()));

            return(valorminutototal);
        }
Ejemplo n.º 3
0
        public async void MockDaChamadaHttpClientFactory()
        {
            var chamadaMock           = Substitute.For <IChamada>();
            var httpClientFactoryMock = Substitute.For <IHttpClientFactory>();


            var fakeHttpMessageHandler = new FakeHttpMessageHandler(new HttpResponseMessage()
            {
                StatusCode = HttpStatusCode.OK,

                Content = new StringContent("Hello World", Encoding.UTF8, "text/plain")
            });
            var fakeHttpClient = new HttpClient(fakeHttpMessageHandler);

            fakeHttpClient.BaseAddress = new Uri("http://good.uri");



            httpClientFactoryMock.CreateClient("mocky").Returns(fakeHttpClient);

            var chamada    = new Chamada(httpClientFactoryMock);
            var helloWorld = await chamada.RetornaDadosApi();


            Assert.Equal("Hello World", helloWorld);
        }
Ejemplo n.º 4
0
        public ActionResult <string> Get()
        {
            var chamada = new Chamada(_clientFactory);
            var result  = chamada.RetornaDadosApi();

            return(result.Result);
        }
        public ActionResult DeleteConfirmed(Guid id)
        {
            Chamada chamada = db.Chamadas.Find(id);

            db.Chamadas.Remove(chamada);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
 /// <summary>
 /// Preenche os dados na tela.
 /// </summary>
 /// <param name="model">Os dados para preencher os campos na tela.</param>
 public void PreencheCampoNaTela(VideosModel model)
 {
     Titulo.PreencheCampo(model.Titulo);
     Chamada.PreencheCampo(model.Chamada);
     Embed.PreencheCampo(model.Embed);
     ComponenteDeTela.Script.ExecuteCodigoJavaScript("$('#idioma').val(1).change()");
     ComponenteDeTela.Script.ExecuteCodigoJavaScript("$('#categoria').val(1).change()");
     ComponenteDeTela.Script.ExecuteCodigoJavaScript("$('#grupo').val(1).change()");
 }
Ejemplo n.º 7
0
 public Pessoa() : base()
 {
     if (!EntityCrud)
     {
         MudancaEstado = new MudancaEstado();
         Chamada       = new Chamada();
         Ministerio    = new List <PessoaMinisterio>();
         Reuniao       = new List <ReuniaoPessoa>();
     }
 }
 public ActionResult Edit([Bind(Include = "ChamadaId,DataChamada,DataCriacao,Observação")] Chamada chamada)
 {
     if (ModelState.IsValid)
     {
         db.Entry(chamada).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(chamada));
 }
Ejemplo n.º 9
0
        public bool ChamadaFeita(int idEvento, DateTime data)
        {
            Chamada c = db.Chamada.Where(x => x.IdEvento == idEvento && x.Data == data).FirstOrDefault();

            if (c != null)
            {
                return(true);
            }
            return(false);
        }
        //public async static Task<symbols> getExchangeSymbol(string symbol)
        //{
        //    var url = "https://api.binance.com/api/v1/exchangeInfo";
        //    using (HttpClient _HttpClient = new HttpClient())
        //    {
        //        var resultado = _HttpClient.GetAsync(url).Result;
        //        var content = await resultado.Content.ReadAsStringAsync();
        //        var exchangeInfo = JsonConvert.DeserializeObject<ExchangeInfo>(content);
        //        var exchangeSymbol = exchangeInfo.symbols.Where(x => x.symbol == symbol).FirstOrDefault();
        //        return exchangeSymbol;
        //    }
        //}

        //public static filters getExchangeFilter(symbols symbol, FilterType filterType)
        //{
        //    return symbol.filters.Where(x => x.filterType == filterType.ToString()).FirstOrDefault();
        //}

        // Tipos de filtros a serem adicionados para seleção



        public static string getEntradaOrderType(Chamada chamada)
        {
            if (chamada.PrecoEntrada <= chamada.PrecoMercadoHoraChamada)
            {
                return("TAKE_PROFIT_LIMIT");
            }
            else
            {
                return("STOP_LOSS_LIMIT");
            }
        }
        public ActionResult Create([Bind(Include = "ChamadaId,DataChamada,DataCriacao,Observação")] Chamada chamada)
        {
            if (ModelState.IsValid)
            {
                chamada.ChamadaId   = Guid.NewGuid();
                chamada.DataCriacao = DateTime.Now;
                db.Chamadas.Add(chamada);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(chamada));
        }
        // GET: Chamada/Delete/5
        public ActionResult Delete(Guid?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Chamada chamada = db.Chamadas.Find(id);

            if (chamada == null)
            {
                return(HttpNotFound());
            }
            return(View(chamada));
        }
        public void Deve_Alterar_A_Model()
        {
            var chamada = new Chamada();

            var mockContexto = new Mock<IDbContexto>();

            var repositorio = new RepositorioBase<Chamada>(mockContexto.Object);

            repositorio.Alterar(chamada);

            mockContexto.Verify(x => x.DefinirComoModificado(It.IsAny<Chamada>()), Times.Once());
            mockContexto.Verify(x => x.SalvarModificacoes(), Times.Once());
            mockContexto.Verify(x => x.Dispose(), Times.Once());
        }
        public void Deve_Alterar_Uma_Model()
        {
            var chamada = new Chamada();
            chamada.Codigo = 34;

            var mockServico = new Mock<IServico<Chamada>>();

            var aplicacao = new AplicacaoBase<Chamada>(mockServico.Object);

            aplicacao.Salvar(chamada);

            mockServico.Verify(x => x.Inserir(It.IsAny<Chamada>()), Times.Never());
            mockServico.Verify(x => x.Alterar(It.IsAny<Chamada>()), Times.Once);
        }
        public void AddMonitor(Chamada chamada, string symbol)
        {
            var AtMonitorado = getAtivoMonitorado(chamada.Id);

            if (AtMonitorado == null)
            {
                var ativo = new AtivoMonitorado(chamada, symbol);
                _ListAtivos.Add(ativo);
            }
            else if (!AtMonitorado.isConnected())
            {
                AtMonitorado.Reconect();
            }
        }
        public void Deve_Inserir_Uma_Model()
        {
            var chamada = new Chamada();

            var mockServico = new Mock<IServico<Chamada>>();
            mockServico.Setup(x => x.Inserir(It.IsAny<Chamada>())).Returns(new Chamada() {Codigo = 34});

            var aplicacao = new AplicacaoBase<Chamada>(mockServico.Object);

            chamada = aplicacao.Salvar(chamada);

            mockServico.Verify(x => x.Inserir(It.IsAny<Chamada>()), Times.Once());
            mockServico.Verify(x => x.Alterar(It.IsAny<Chamada>()), Times.Never());
            Assert.AreEqual(34, chamada.Codigo);
        }
Ejemplo n.º 17
0
        public Chamada GetChamada(int idEvento, DateTime data)
        {
            Chamada c = db.Chamada.Where(x => x.IdEvento == idEvento && x.Data == data).FirstOrDefault();

            if (c == null)
            {
                c          = new Chamada();
                c.IdEvento = idEvento;
                c.Data     = data;

                db.Chamada.Add(c);
                db.SaveChanges();
            }

            return(c);
        }
        public void Deve_Inserir_A_Model()
        {
            var chamada = new Chamada();

            var mockDbSetModel = new Mock<DbSet<Chamada>>();

            var mockContexto = new Mock<IDbContexto>();
            mockContexto.Setup(x => x.RetornarDbSet<Chamada>()).Returns(mockDbSetModel.Object);

            var repositorio = new RepositorioBase<Chamada>(mockContexto.Object);

            chamada = repositorio.Inserir(chamada);

            mockDbSetModel.Verify(x => x.Add(It.IsAny<Chamada>()), Times.Once());
            mockContexto.Verify(x => x.SalvarModificacoes(), Times.Once());
            mockContexto.Verify(x => x.Dispose(), Times.Once());
        }
        public JsonResult Salvar(Chamada chamada)
        {
            try
            {
                var resul = _aplicacao.Salvar(chamada);

                return JsonGetPermitido(resul);
            }
            catch (ApplicationException ex)
            {
                return JsonGetPermitido(new { erro = ex.Message });
            }
            catch (Exception ex)
            {
                return JsonGetPermitido(new { erro = ex.Message });
            }
        }
Ejemplo n.º 20
0
        public Chamada ConsultarChamada(int?CodigoDDDOrigem, int?CodigoDDDDestino)
        {
            var chamada = new Chamada();

            try
            {
                if (CodigoDDDOrigem != null && CodigoDDDDestino != null)
                {
                    chamada = db.Chamadas.Where(x => x.CodigoDDDOrigem == CodigoDDDOrigem && x.CodigoDDDDestino == CodigoDDDDestino).FirstOrDefault();
                }

                return(chamada);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public static bool IsValidateLotSizeFIlter(out string filterEror, Chamada chamada, decimal qtd)
        {
            var LotSizeFIlter = chamada.Symbol.filters.Where(x => x.filterType == "LOT_SIZE").FirstOrDefault();
            var res           = ((qtd - LotSizeFIlter.minQty) % LotSizeFIlter.stepSize == 0) ? true : false;

            filterEror = "";
            if (res == false)
            {
                if (LotSizeFIlter.stepSize == 1)
                {
                    filterEror = "A Quantidade precisa ser um numero inteiro ";
                }
                else
                {
                    filterEror = "A Quantidade precisa ser um numero multiplo de " + LotSizeFIlter.stepSize.ToString().TrimEnd('0');
                }
            }
            return(res);
        }
Ejemplo n.º 22
0
        public void Selecionar()
        {
            int      codigo    = int.Parse(Request["codigo"]);
            Turma    turma     = new Turma().Selecionar(codigo);
            DateTime dataAtual = Convert.ToDateTime(txtData.Text);

            if (turma != null)
            {
                txtTurma.Text = turma.ToString();
                DataTable dt = new DataTable();
                dt.Columns.Add("codigo", System.Type.GetType("System.String"));
                dt.Columns.Add("aluno", System.Type.GetType("System.String"));
                foreach (Matricula matricula in turma.AlunosMatriculados)
                {
                    dt.Rows.Add(new String[] { matricula.Aluno.Codigo.ToString(), matricula.Aluno.Pessoa.Nome });
                }
                gdvAluno.DataSource = dt;
                gdvAluno.DataBind();
                ViewState.Add("ListaAlunos", dt);
                //checar preseça dos alunos
                IList <Chamada> listaChamada = new Chamada().SelecionarPorTurmaData(turma, dataAtual);
                foreach (Chamada chamada in listaChamada)
                {
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        if (chamada.Aluno.Codigo == Convert.ToInt32(dt.Rows[i].ItemArray[0].ToString()))
                        {
                            if (chamada.Presenca)
                            {
                                CheckBox chk = (CheckBox)gdvAluno.Rows[i].Cells[2].FindControl("chkPresenca");
                                chk.Checked = true;
                            }
                            break;
                        }
                    }
                }
            }
            else
            {
                ViewState["ListaAlunos"] = null;
            }
        }
        public async void ConsultarAlunosLista()
        {
            int     a = 0;
            Chamada x = new Chamada();

            x.Id_Turma = ListarAvaliacoes.Id_TurmaNotas;
            urna       = await servicao.GetChamada_TurmaAsync(x);

            int i = 1;

            int contar = urna.Count();

            if (urna.Count().Equals(0))
            {
                await DisplayAlert($"Turma{Turma} ", "Essa turma não possui nenhum aluno cadastrado!", "OK");

                listView.ItemsSource = null;
            }

            else
            {
                var listaElementos = new List <Chamada>();

                for (int z = 0; z < contar; z++)
                {
                    cac = new Chamada()
                    {
                        Numero_Chamada = urna[z].Numero_Chamada,
                        Nome           = urna[z].Nome,
                    };



                    listaElementos.Add(cac);
                }


                listView.ItemsSource = listaElementos;
            }
        }
Ejemplo n.º 24
0
        public void CrieArquivoDeChamadaNoDiretorio(Chamada chamada)
        {
            const string DIRETORIO = "../var/spool/asterisk/outgoing";

            var nomeDoArquivo = chamada.Id.ToString().Replace("-", string.Empty);

            if (File.Exists(DIRETORIO + nomeDoArquivo))
            {
                File.Delete(DIRETORIO + nomeDoArquivo);
            }

            using (var writer = new StreamWriter(DIRETORIO + nomeDoArquivo, true))
            {
                writer.WriteLine($"Channel: {chamada.Canal}\n" +
                                 $"Callerid: {chamada.IdDoChamador}\n" +
                                 $"MaxRetries: {chamada.MaximoDeTentativas}\n" +
                                 $"RetryTime: {chamada.TempoEntreTentativas}\n" +
                                 $"WaitTime: {chamada.TempoParaAguardarChamando}\n" +
                                 $"Context: {chamada.Contexto}\n" +
                                 $"Extension: {chamada.Extensao}");
            }
        }
Ejemplo n.º 25
0
        public List <Chamada> ListarPresenca(Chamada objEntrada)
        {
            MySqlCommand cmd = null;

            cmd = new MySqlCommand(@"
                    SELECT c.idChamada,a.Nome,c.DataHora 
                    FROM chamada c 
                    inner join aluno a ON a.idAluno = c.idAluno
                    where c.idAula = @idAula
            ");

            cmd.Parameters.Add(new MySqlParameter("idAula", objEntrada.idAula.idAula));

            Conexao c = new Conexao();

            c.Abrir();

            MySqlDataReader reader = c.Pesquisar(cmd);

            List <Chamada> lstRetorno = new List <Chamada>();

            while (reader.Read())
            {
                Chamada chamada = new Chamada();
                Aluno   a       = new Aluno();
                a.Nome = reader.GetString(1);

                chamada.idChamada = reader.GetInt32(0);
                chamada.idAluno   = a;
                chamada.datahora  = reader.GetDateTime(2);
                lstRetorno.Add(chamada);
            }

            c.Fechar();

            return(lstRetorno);
        }
Ejemplo n.º 26
0
        public List <Chamada> ListarFalta(Chamada objEntrada)
        {
            MySqlCommand cmd = null;

            cmd = new MySqlCommand(@"
                    select a.idAluno,a.Nome from aluno a 
                    INNER JOIN aula al ON a.idTurma = al.idTurma
                    where a.idAluno not in(
                    SELECT idAluno FROM chamada c WHERE c.idAula = @idAula
                    ) AND al.idAula = @idAula
            ");

            cmd.Parameters.Add(new MySqlParameter("idAula", objEntrada.idAula.idAula));

            Conexao c = new Conexao();

            c.Abrir();

            MySqlDataReader reader = c.Pesquisar(cmd);

            List <Chamada> lstRetorno = new List <Chamada>();

            while (reader.Read())
            {
                Chamada chamada = new Chamada();
                Aluno   a       = new Aluno();
                a.Nome = reader.GetString(1);

                chamada.idAluno = a;
                lstRetorno.Add(chamada);
            }

            c.Fechar();

            return(lstRetorno);
        }
Ejemplo n.º 27
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="p"></param>
        /// <param name="ch"></param>
        /// <returns></returns>
        public static bool apagarCham(Cliente p, Chamada ch) // Porque deverei tirar "Cliente p" ??
        {
            //Assumindo que ch vem com dados e que sabemos o tipo de chamada
            //Cliente b = new Cliente(p.Nome, p.NumTel, p.Saldo);
            //int contador = 0;


            if (ch.PlanoChamadaAssMensal == PlanoChamadaIlimitado.chamadaFixa || ch.PlanoChamadaAssMensal == PlanoChamadaIlimitado.chamadaMovel)
            {
                foreach (Chamada x in chamadasSistIlimitado)
                {
                    if (x == ch)
                    {
                        x.SituacaoChamada = EstadoChamada.Eliminada;
                    }
                }
                methodReturn = true;
            }
            else if (ch.PlanoChamadaAssMensal != PlanoChamadaIlimitado.chamadaFixa && ch.PlanoChamadaAssMensal != PlanoChamadaIlimitado.chamadaMovel)
            {
                foreach (Chamada y in chamadasCliente)
                {
                    if (y == ch)
                    {
                        y.SituacaoChamada = EstadoChamada.Eliminada;
                    }
                }
                methodReturn = true;
            }
            else
            {
                methodReturn = false;
            }

            return(methodReturn);
        }
Ejemplo n.º 28
0
        public async void SelecionarChamada(Chamada chamada)
        {
            if (App.IsGPSEnable)
            {
                var resposta = await UserDialogs.Instance.ConfirmAsync("Visualizar Chamada?", "Chamada", "Sim", "Não");

                if (resposta)
                {
                    NavigationParameters navParam = new NavigationParameters();
                    navParam.Add("ChamadaSelecionada", chamada);
                    navParam.Add("IsPendencia", true);
                    await NavigationService.NavigateAsync("//NavigationPage/ResponderChamada", navParam, useModalNavigation : true);

                    //try
                    //{
                    //    UserDialogs.Instance.ShowLoading("Carregando...");

                    //    Plugin.Geolocator.Abstractions.Position pos = await GetCurrentPosition();

                    //    SelecaoChamadaParam param = new SelecaoChamadaParam();
                    //    param.chamada = chamada;
                    //    param.dataDecisao = DateTime.Now;
                    //    param.codVeiculo = CrossSettings.Current.Get<RetornoVeiculosMotorista>("VeiculoSelecionado").codVeiculo;
                    //    param.latitudeAtual = pos.Latitude.ToString();
                    //    param.longitudeAtual = pos.Longitude.ToString();
                    //    var json = JsonConvert.SerializeObject(param);
                    //    var content = new StringContent(json, Encoding.UTF8, "application/json");

                    //    var response = await IniciarCliente(true).PostAsync("motorista/selecionarChamada", content);

                    //    if (response.IsSuccessStatusCode)
                    //    {
                    //        var respStr = await response.Content.ReadAsStringAsync();
                    //        chamada = JsonConvert.DeserializeObject<Chamada>(respStr);
                    //        CrossSettings.Current.Remove("ChamadaAceita");
                    //        CrossSettings.Current.Set("ChamadaAceita", chamada);
                    //        // var navParam = new NavigationParameters();
                    //        // navParam.Add("chamadaAceita", chamada);
                    //        await NavigationService.NavigateAsync("Chamada", null, true);
                    //    }
                    //    else
                    //    {
                    //        await DialogService.DisplayAlertAsync("Aviso", response.Content.ReadAsStringAsync().Result, "OK");
                    //    }
                    //}
                    //catch (AccessViolationException e)
                    //{
                    //    await DialogService.DisplayAlertAsync("Aviso", e.Message, "OK");
                    //}
                    //catch (Exception e)
                    //{
                    //    Crashes.TrackError(e);
                    //    await DialogService.DisplayAlertAsync("Aviso", "Falha ao selecionar chamada", "OK");
                    //}
                    //finally
                    //{
                    //    UserDialogs.Instance.HideLoading();
                    //}
                }
            }
            else
            {
                await DialogService.DisplayAlertAsync("Aviso", "Ative o GPS para poder selecionar uma chamada.", "OK");
            }
        }
Ejemplo n.º 29
0
        private async void CancelarFinalizarCorrida()
        {
            Plugin.Geolocator.Abstractions.Position pos = await GetCurrentPosition();

            CrossSettings.Current.Set("UltimaLocalizacaoValida", pos);
            if (TextoBotaoFinal.Equals("Cancelar"))
            {
                var resposta = await UserDialogs.Instance.ConfirmAsync("Cancelar Chamada?", "Cancelamento", "Sim", "Não");

                if (resposta)
                {
                    try
                    {
                        UserDialogs.Instance.ShowLoading("Processando...");

                        CancelarChamadaParam param = new CancelarChamadaParam();
                        param.chamada           = Chamada;
                        param.latitudeAtual     = pos.Latitude.ToString();
                        param.longitudeAtual    = pos.Longitude.ToString();
                        param.codChamadaVeiculo = Chamada.codChamadaVeiculo;
                        param.dataCancelamento  = DateTime.Now;
                        param.codVeiculo        = CrossSettings.Current.Get <RetornoVeiculosMotorista>("VeiculoSelecionado").codVeiculo;

                        var json    = JsonConvert.SerializeObject(param);
                        var content = new StringContent(json, Encoding.UTF8, "application/json");


                        var response = await IniciarCliente(true).PostAsync("motorista/cancelarChamada", content);

                        if (response != null)
                        {
                            if (response.IsSuccessStatusCode)
                            {
                                CrossSettings.Current.Remove("ChamadaAceita");
                                await DialogService.DisplayAlertAsync("Aviso", "Corrida cancelada.", "OK");

                                await NavigationService.NavigateAsync("/NavigationPage/Home", useModalNavigation : true);
                            }
                            else
                            {
                                AdicionarInfoPendente(json, "cancelarChamada");
                                CrossSettings.Current.Remove("ChamadaAceita");
                                await DialogService.DisplayAlertAsync("Aviso", "Corrida cancelada.", "OK");

                                await NavigationService.NavigateAsync("/NavigationPage/Home", useModalNavigation : true);

                                // await DialogService.DisplayAlertAsync("Aviso", response.Content.ReadAsStringAsync().Result, "OK");
                            }
                        }
                    }
                    catch (AccessViolationException e)
                    {
                        await DialogService.DisplayAlertAsync("Aviso", e.Message, "OK");
                    }
                    catch (Exception e)
                    {
                        Crashes.TrackError(e);
                        await DialogService.DisplayAlertAsync("Aviso", "Falha ao cancelar corrida", "OK");
                    }
                    finally
                    {
                        UserDialogs.Instance.HideLoading();
                    }
                }
            }
            else
            {
                try
                {
                    UserDialogs.Instance.ShowLoading("Processando...");
                    Chamada chamadaFinal = CrossSettings.Current.Get <Chamada>("ChamadaEmCorrida");


                    //  MessagingCenter.Unsubscribe<ViewModelBase>(this, "MudancaValor");

                    MessagingCenter.Unsubscribe <ViewModelBase>(this, "MudancaPosicao");

                    // Plugin.Geolocator.Abstractions.Position pos = await GetCurrentPosition();
                    chamadaFinal.latitudeFinalCorrida  = pos.Latitude.ToString();
                    chamadaFinal.longitudeFinalCorrida = pos.Longitude.ToString();

                    chamadaFinal.dataFimCorrida = DateTime.Now;

                    CancelarChamadaParam param = new CancelarChamadaParam();

                    chamadaFinal.valorFinalAjustado = float.Parse(chamadaFinal.valorFinal).ToString("N2");
                    param.chamada           = chamadaFinal;
                    param.latitudeAtual     = pos.Latitude.ToString();
                    param.longitudeAtual    = pos.Longitude.ToString();
                    param.codChamadaVeiculo = chamadaFinal.codChamadaVeiculo;
                    param.codVeiculo        = CrossSettings.Current.Get <RetornoVeiculosMotorista>("VeiculoSelecionado").codVeiculo;

                    CrossSettings.Current.Remove("ChamadaEmCorrida");

                    var json    = JsonConvert.SerializeObject(param);
                    var content = new StringContent(json, Encoding.UTF8, "application/json");


                    var response = await IniciarCliente(true).PostAsync("motorista/finalizarCorrida", content);

                    // var response = await ChamarServicoPost(true, "finalizarCorrida", content);

                    if (response != null)
                    {
                        if (response.IsSuccessStatusCode)
                        {
                            await DialogService.DisplayAlertAsync("Aviso", "Corrida finalizada.\nValor Final : R$" + param.chamada.valorFinalAjustado, "OK");

                            await NavigationService.NavigateAsync("/NavigationPage/Home", useModalNavigation : true);
                        }
                        else
                        {
                            await DialogService.DisplayAlertAsync("Aviso", response.Content.ReadAsStringAsync().Result, "OK");
                        }
                    }
                }
                catch (Exception e)
                {
                    Crashes.TrackError(e);
                    await DialogService.DisplayAlertAsync("Aviso", "Falha ao finalizar corrida", "OK");
                }
                finally
                {
                    UserDialogs.Instance.HideLoading();
                }
            }
        }
Ejemplo n.º 30
0
        public void CrieNovaChamada(
            EnumTiposDeChamada tipoDeChamada,
            EnumTiposDeCanal tipoDoCanal,
            string canal,
            string identificacaoDoChamador,
            int maximoDeTentativas,
            int tempoEntreTentativas,
            int tempoParaAguardarChamando)
        {
            var idDaChamada = Guid.NewGuid();

            using (var servicoDeChamadasParaExecutar = new ServicoDeChamadasParaExecutar())
            {
                while (servicoDeChamadasParaExecutar.VerifiqueSeChamadaJaEstaNaFilaDeExecucao(idDaChamada))
                {
                    idDaChamada = Guid.NewGuid();
                }
            }

            string stringTipoDoCanal;

            switch (tipoDoCanal)
            {
            case EnumTiposDeCanal.SIP:
                stringTipoDoCanal = "SIP";
                break;

            default:
                stringTipoDoCanal = "";
                break;
            }

            string stringTipoDeChamada;

            switch (tipoDeChamada)
            {
            case EnumTiposDeChamada.COMUM:
                stringTipoDeChamada = "Comum";
                break;

            case EnumTiposDeChamada.AVISO_DE_BOLETO_A_VENCER:
                stringTipoDeChamada = "AvisoDeBoleto";
                break;

            case EnumTiposDeChamada.PESQUISA_DE_SATISFACAO:
                stringTipoDeChamada = "PesquisaDeSatisfacao";
                break;

            default:
                stringTipoDeChamada = "Comum";
                break;
            }

            var chamada =
                new Chamada()
            {
                Id                        = idDaChamada,
                Canal                     = $"{stringTipoDoCanal}/{canal}",
                IdDoChamador              = identificacaoDoChamador,
                MaximoDeTentativas        = maximoDeTentativas,
                TempoEntreTentativas      = tempoEntreTentativas,
                TempoParaAguardarChamando = tempoParaAguardarChamando,
                Contexto                  = stringTipoDeChamada,
                Extensao                  = "s"
            };

            //Gravar o id na tabela de chamadas pra executar
            //esse gravar do banco, tem que ter retorno com sucesso antes de colocar o arquivo no diretorio

            CrieArquivoDeChamadaNoDiretorio(chamada);
        }
Ejemplo n.º 31
0
        public static void Initialize(SilverHawksContext context)
        {
            context.Database.EnsureCreated();

            // Look for any students.
            //if (context.Atletas.Any())
            //{
            //    return;   // DB has been seeded
            //}

            var atletas = new Atleta[] {
                new Atleta {
                    Nome = "Amanda", Diretoria = true, Numero = "58"
                },
                new Atleta {
                    Nome = "Tue", Diretoria = false, Numero = "44"
                }
            };

            foreach (Atleta a in atletas)
            {
                context.Atletas.Add(a);
            }
            context.SaveChanges();

            var chamadas = new Chamada[] {
                new Chamada {
                    ID = 1, Data = DateTime.Parse("2017-10-12")
                },
                new Chamada {
                    ID = 2, Data = DateTime.Parse("2017-10-15")
                },
                new Chamada {
                    ID = 3, Data = DateTime.Parse("2017-11-15")
                }
            };

            foreach (Chamada c in chamadas)
            {
                context.Chamadas.Add(c);
            }
            context.SaveChanges();


            var presencas = new Presenca[] {
                new Presenca {
                    ChamadaID = 1, AtletaID = atletas.Single(s => s.Nome == "Tue").ID, Tipo = TipoPresenca.F, Data = DateTime.Parse("2017-10-12")
                },
                new Presenca {
                    ChamadaID = 2, AtletaID = atletas.Single(s => s.Nome == "Tue").ID, Tipo = TipoPresenca.P, Data = DateTime.Parse("2017-10-15")
                },
                new Presenca {
                    ChamadaID = 3, AtletaID = atletas.Single(s => s.Nome == "Tue").ID, Tipo = TipoPresenca.P, Data = DateTime.Parse("2017-11-15")
                },
                new Presenca {
                    ChamadaID = 1, AtletaID = atletas.Single(s => s.Nome == "Amanda").ID, Tipo = TipoPresenca.J, Data = DateTime.Parse("2017-10-12")
                },
                new Presenca {
                    ChamadaID = 2, AtletaID = atletas.Single(s => s.Nome == "Amanda").ID, Tipo = TipoPresenca.F, Data = DateTime.Parse("2017-10-15")
                },
                new Presenca {
                    ChamadaID = 3, AtletaID = atletas.Single(s => s.Nome == "Amanda").ID, Tipo = TipoPresenca.F, Data = DateTime.Parse("2017-11-15")
                }
            };

            foreach (Presenca p in presencas)
            {
                context.Presencas.Add(p);
            }
            context.SaveChanges();

            //var todoItems = new TodoItem[]
            //{
            //    new TodoItem{Name="Amanda", Id=1, IsComplete=true},
            //    new TodoItem { Name = "Jose", Id = 2, IsComplete = false},
            //    new TodoItem { Name = "Maria", Id = 3, IsComplete = true },
            //    new TodoItem { Name = "Eduardo", Id = 4, IsComplete = false }
            //};

            //foreach (TodoItem s in todoItems)
            //{
            //    context.TodoItems.Add(s);
            //}

            context.SaveChanges();
        }
Ejemplo n.º 32
0
        public static bool processaChamada(Chamada c) // 224 linhas de codigo
        {
            #region Telemovel


            if (c.CallNumber.NumTel.Substring(0, 1) == "9")
            {
                #region Telemovel-91

                if (c.CallNumber.NumTel.Substring(1, 1) == "1")
                {
                    if (c.RecNumber.NumTel.Substring(0, 1) == "9")
                    {
                        if (c.CallNumber.Saldo >= 0.05)                                      // Processo a chamada
                        {
                            c.DataInicioChamada = DateTime.Now;                              // começa a chamada

                            for (int forOne = 0; forOne <= chamadasCliente.Length; forOne++) // A chamada vai ficar guardada num array de chamadas
                            {
                                // preciso de encontrar uma posicao vazia no array
                                if (chamadasCliente[forOne] == null)
                                {
                                    //Processar custo da chamada
                                    c.Custo = 0.05;                  // indica que custo passa a ser 0.05

                                    if (c.DataInicioChamada != null) // se terminar chamada
                                    {
                                        c.Duracao          = Chamada.contarDuracao(c.DataInicioChamada, c.DataFimChamada);
                                        c.CallNumber.Saldo = c.CallNumber.Saldo - chamadasCliente[forOne].Custo;

                                        // adicionar chamada
                                        chamadasCliente[forOne] = c;
                                        methodReturn            = true;
                                    }
                                }
                                else if (chamadasCliente[forOne] != null && forOne == chamadasCliente.Length) // se se verificar isto entao
                                                                                                              // o array está todo ocupado
                                {
                                    methodReturn = false;
                                }
                            }
                        }
                        else // se nao existir saldo suficiente
                        {
                            methodReturn = false;//Nova instrucao
                        }
                    }
                    else if (c.RecNumber.NumTel.Substring(0, 1) == "2") // Quem atende tem numero fixo ... Que começa por 2 ?
                    {
                        if (c.CallNumber.Saldo >= 0.15)                 // Quem faz a chamada tem saldo igual superior a 0.15
                        {
                            c.DataInicioChamada = DateTime.Now;         //Nova instrucao

                            for (int forTwo = 0; forTwo <= chamadasCliente.Length; forTwo++)
                            {
                                // preciso de encontrar uma posicao vazia no array
                                if (chamadasCliente[forTwo] == null)
                                {
                                    c.Despesa = 0.15;

                                    if (c.DataFimChamada != null) // se terminar chamada
                                    {
                                        // contar e guardar a duracao da chamada na respetiva variavel
                                        c.Duracao = Chamada.contarDuracao(c.DataInicioChamada, c.DataInicioChamada);
                                        // descontar ao saldo
                                        c.Saldo = c.Saldo - c.Despesa;
                                        chamadasCliente[forTwo] = c; //adiciona chamada ao array
                                        methodReturn            = true;
                                    }
                                }
                            }
                        }
                        else
                        {
                            methodReturn = false;
                        }
                    }
                }
                #endregion

                #region Telemovel-93

                else if (c.CallNumber.NumTel.Substring(1, 1) == "3")
                {
                    if (c.CallNumber.NumTel.Substring(0, 1) == "9")
                    {
                        for (int forThree = 0; forThree <= chamadasCliente.Length; forThree++)
                        {
                            //mes = mesc;
                            //dia = diac;
                            c.Custo = 0.80;
                            if (c.DataFimChamada != null) // se terminar chamada
                            {
                                c.Duracao            = Chamada.contarDuracao(c.DataInicioChamada, c.DataFimChamada);
                                c.CallNumber.Despesa = c.CallNumber.Despesa - (-c.Custo);
                            }
                        }
                    }
                    else if (c.RecNumber.NumTel.Substring(0, 1) == "2")
                    {
                        for (int forSix = 0; forSix < chamadasCliente.Length; forSix++)
                        {
                            c.Custo = 0.17;
                            if (c.DataFimChamada != null) // se terminar chamada
                            {
                                c.Duracao          = Chamada.contarDuracao(c.DataInicioChamada, c.DataFimChamada);
                                c.CallNumber.Saldo = c.CallNumber.Saldo + chamadasCliente[forSix].Custo;
                            }
                        }
                    }
                }

                #endregion

                #region Telemovel-96

                else if (c.CallNumber.NumTel.Substring(1, 1) == "6")
                {
                    if (c.RecNumber.NumTel.Substring(0, 1) == "9" || c.RecNumber.NumTel.Substring(0, 1) == "2")
                    {
                        for (int forFour = 0; forFour <= chamadasSistIlimitado.Length; forFour++)
                        {
                            while (chamadasSistIlimitado[forFour] == null) // percorrer o array a procura de eventuais chamadas deste cliente
                            {
                                if (chamadasSistIlimitado[forFour].PlanoChamadaAssMensal == PlanoChamadaIlimitado.chamadaFixa && countChamadasFixIlimitado <= CHAMADAFIXAPLILIMITADO)
                                {
                                    // vou incrementar com um dos contadores acima definidos
                                    countChamadasFixIlimitado++;
                                }
                                else if (chamadasSistIlimitado[forFour].PlanoChamadaAssMensal == PlanoChamadaIlimitado.chamadaMovel && countChamadasMovIlimitado <= CHAMADAMOVELPLILIMITADO)
                                {
                                    countChamadasMovIlimitado++;
                                }
                            }
                            //Processar e adiconar a chamada

                            for (int forFive = 0; forFive <= chamadasSistIlimitado.Length; forFive++)
                            {
                                if (chamadasSistIlimitado[forFive] == null)
                                {
                                    //verificar limites de chamada (quantas chamadas restam para fixo e movel)
                                    if (countChamadasFixIlimitado < CHAMADAFIXAPLILIMITADO || countChamadasMovIlimitado < CHAMADAMOVELPLILIMITADO)
                                    {
                                        //contar duracao
                                        //se terminou chamada
                                        if (c.DataFimChamada != null)
                                        {
                                            c.Duracao = Chamada.contarDuracao(c.DataInicioChamada, c.DataFimChamada);

                                            //Adicionar chamada ao array
                                            chamadasSistIlimitado[forFive] = c;
                                            methodReturn = true;
                                        }
                                    }
                                    else
                                    {
                                        methodReturn = false;
                                        break;
                                    }
                                }
                            }
                            // verificar se existe alguma posicao vazia ... caso nao exista? Teremos de contar
                            //caller.ChamadaMovel = caller.ChamadaMovel - 1;
                        }
                        //mes = mesc;
                        //dia = diac;
                        // duracao = contarDuracao(caller, receiver);
                    }
                }
                #endregion
            }
            #endregion

            #region Telefone

            else if (c.CallNumber.NumTel.Substring(0, 1) == "2") //Se realiza de chamada de telefone fixo
            {
                if (c.RecNumber.NumTel.Substring(0, 1) == "9")   //Se rececao de chamada de telemovel
                {
                    for (int forSeven = 0; forSeven < chamadasCliente.Length; forSeven++)
                    {
                        //O que falta??


                        //mes = mesc;
                        //dia = diac;
                        chamadasCliente[forSeven].Custo   = 0.1;
                        chamadasCliente[forSeven].Duracao = Chamada.contarDuracao(c.DataInicioChamada, c.DataFimChamada);
                        chamadasCliente[forSeven].CallNumber.DespesaMes = chamadasCliente[forSeven].CallNumber.DespesaMes + 0.1;

                        //Adcionar ao array
                        chamadasCliente[forSeven] = c;
                    }
                }
                else if (c.RecNumber.NumTel.Substring(0, 1) == "2")//Se rececao de chamada de telefone fixo
                {
                    // Será que o for está bem declarado?? Nao irá estourar?
                    for (int forEight = 0; forEight <= chamadasCliente.Length; forEight++)
                    {
                        // O que falta??

                        chamadasCliente[forEight].Custo = 0;  //isto nao fazia falta!!
                        chamadasCliente[forEight]       = c;
                        methodReturn = true;
                    }
                    //mes = mesc;
                    //dia = diac;

                    //duracao = contarDuracao(caller, receiver);
                }
            }
            #endregion

            return(methodReturn);
        }
        public async void Button_Clicked(object sender, EventArgs e)
        {
            List <AlunoBean> alun   = new List <AlunoBean>();
            Chamada          alunoo = new Chamada()
            {
                Id_Turma = Id_TurmaAluno,
            };

            int a = 0;

            urna = await servicao.GetChamada_TurmaAsync(alunoo);

            int i = 1;

            int contar = urna.Count();

            Turma          t          = new Turma();
            NotaDAO        tpd        = new NotaDAO();
            ProfessorTurma prturma    = null;
            List <Turma>   listaTurma = new List <Turma>();



            // await DisplayAlert(bixa, "Foi o item Selecionado ", "OK");

            //chama o service para incluir a conta via API
            TurmaDao service = new TurmaDao();
            int      c       = 0;

            // string bixa = iten[c].Serie;
            //t.Serie = bixa;
            //listaTurma = await servicao.GetId_TurmaAsync(t);

            //item.Id_Turma = listaTurma[c].Id_Turma;
            // Id_Turma = item.Id_Turma;
            c++;

            AlunoBean ch1 = new AlunoBean();

            foreach (var item in urna)
            {
                ch1.Nome     = item.Nome;
                ch1.Id_Turma = Id_TurmaAluno;
            }
            if (await servicaoalunao.GetAutenticarId_Açuno(ch1) != null)
            {
                urna2 = await servicaoalunao.GetAutenticarId_Açuno(ch1);

                int contar2 = urna2.Count();
                int yy      = 1;
                foreach (var item in urna)
                {
                    Nota ch = new Nota();

                    ch.Id_Turma     = Id_TurmaAluno;
                    ch.Id_Aluno     = urna2[yy].Id_Aluno;
                    ch.Id_Professor = TelaLoginProfessor.Id_Professor;
                    ch.Id_Bimestre  = ListarAvaliacoes.Id_BimestreNotas;
                    ch.nota         = 5;



                    yy++;
                    await tpd.AddNotasAsync(ch);
                }
                await PopupNavigation.Instance.PushAsync(new PopPupSucesso());
            }



            await DisplayAlert("Sucerro", "Salvo", "Ok");
        }
Ejemplo n.º 34
0
        async void Chamar_Clicked(object sender, System.EventArgs e)
        {
            string RestUrl = "http://104.248.186.97:8080/motorapido/ws/usuario/enviarChamada";

            var uri = new Uri(string.Format(RestUrl, string.Empty));


            Chamada data = new Chamada
            {
                codUsuario         = int.Parse(Preferences.Get("UserId", "default_value")),
                cepOrigem          = "teste",
                bairroOrigem       = "teste",
                cidadeOrigem       = "teste",
                logradouroOrigem   = "teste",
                numeroOrigem       = "teste",
                complementoOrigem  = "teste",
                latitudeOrigem     = "-10.916096",
                longitudeOrigem    = "-37.048814",
                cepDestino         = "teste",
                bairroDestino      = "teste",
                cidadeDestino      = "teste",
                logradouroDestino  = "teste",
                numeroDestino      = "teste",
                complementoDestino = "teste",
                latitudeDestino    = "-10.016096",
                longitudeDestino   = "-37.148814",
                observacao         = Observação.Text
            };


            var json = JsonConvert.SerializeObject(data);

            var content = new StringContent(json, Encoding.UTF8, "application/json");


            HttpResponseMessage response = null;


            var client = new HttpClient();


            try

            {
                response = await client.PostAsync(uri, content);
            }

            catch

            {
                await Application.Current.MainPage.DisplayAlert("Erro", "API não disponível ou sem conectividade Internet.", "OK");



                return;
            }


            if (response.IsSuccessStatusCode)
            {
                string input = await response.Content.ReadAsStringAsync();


                dynamic output = JsonConvert.DeserializeObject <dynamic>(input);



                RetornoChamada retornochamada = new RetornoChamada();

                //atualizar o que vem da des-serialização

                retornochamada.dataChamada = output.dataChamada;
                retornochamada.destino     = output.destino;
                retornochamada.origem      = output.origem;

                try
                {
                    retornochamada.valor = output.valor;
                }

                catch
                {
                    retornochamada.valor = 0;
                }

                retornochamada.codChamada    = output.codChamada;
                retornochamada.placaVeiculo  = output.placaVeiculo;
                retornochamada.corVeiculo    = output.corVeiculo;
                retornochamada.modeloVeiculo = output.modeloVeiculo;
                retornochamada.nomeMotorista = output.nomeMotorista;


                await Navigation.PushAsync(new RetornoChamadaDetailPage(new RetornoChamadaDetailViewModel(retornochamada)));
            }

            else
            {
                Console.WriteLine("------------------------>" + response.ReasonPhrase + " " + response.StatusCode);
            }
        }
Ejemplo n.º 35
0
        public bool Salvar()
        {
            bool     retorno         = false;
            int      codigo          = int.Parse(Request["codigo"]);
            Turma    turma           = new Turma().Selecionar(codigo);
            DateTime dataSelecionada = Convert.ToDateTime(txtData.Text);
            DateTime dataAtual       = DateTime.Now.Date;

            if (dataSelecionada > dataAtual)
            {
                Mensagem.Aviso("Data da chamada deve ser menor ou igual a Data atual.");
            }
            else
            {
                DataTable listaAlunos = (DataTable)ViewState["ListaAlunos"];
                if (turma != null && listaAlunos != null)
                {
                    //checar preseça dos alunos
                    IList <Chamada> listaChamada = new Chamada().SelecionarPorTurmaData(turma, dataSelecionada);
                    for (int i = 0; i < listaAlunos.Rows.Count; i++)
                    {
                        Chamada  chamada;
                        CheckBox chk           = (CheckBox)gdvAluno.Rows[i].Cells[2].FindControl("chkPresenca");
                        int      codigoChamada = 0;
                        //verifica se a chamada ja foi incluida no banco de dados
                        foreach (Chamada chamadaBanco in listaChamada)
                        {
                            if (chamadaBanco.Aluno.Codigo == Convert.ToInt32(listaAlunos.Rows[i].ItemArray[0].ToString()))
                            {
                                codigoChamada = chamadaBanco.Codigo;
                                break;
                            }
                        }
                        //atualiza
                        if (codigoChamada > 0)
                        {
                            chamada = new Chamada().Selecionar(codigoChamada);
                        }
                        else
                        {
                            //inclui registro na tabela
                            chamada          = new Chamada();
                            chamada.Aluno    = new Aluno().Selecionar(Convert.ToInt32(listaAlunos.Rows[i].ItemArray[0].ToString()));
                            chamada.Turma    = turma;
                            chamada.Data     = dataSelecionada;
                            chamada.Presenca = chk.Checked;
                        }
                        //inclui ou atualiza a presença do aluno
                        chamada.Presenca = chk.Checked;
                        try
                        {
                            retorno = chamada.Confirmar();
                        }
                        catch (Model.Base.GepexException.EBancoDados ex)
                        {
                            Mensagem.Aviso(Comum.TraduzirMensagem(ex));
                        }
                        catch (Model.Base.GepexException.ERegraNegocio ex)
                        {
                            Mensagem.Aviso(ex.Message);
                        }
                        catch (Exception ex)
                        {
                            throw ex;
                        }
                        if (!retorno)
                        {
                            break;
                        }
                    }
                }
            }
            return(retorno);
        }