public IActionResult Put(int id, [FromBody] TrechoDto trechoRequest) { var origem = localRepository.Obter(trechoRequest.IdOrigem); if (origem == null) { return(NotFound()); } var destino = localRepository.Obter(trechoRequest.IdDestino); if (destino == null) { return(NotFound()); } var distancia = CalcularDistancia(origem, destino); var trecho = new Trecho(origem, destino, distancia); var mensagens = trechoService.Validar(trecho); if (mensagens.Count() > 0) { return(BadRequest(mensagens)); } trechoRepository.AtualizarTrecho(id, trecho); contexto.SaveChanges(); return(Ok()); }
public void recuar(int posicao = 0) { var pais = historia.paisDoTrecho(trechoAtual); trechoAtual = pais[posicao]; renderizaTrechoAtual(); }
public string Buscar(string encomenda, List <Trecho> trechosCadastrados) { string[] informacoesEncomenda = encomenda.Split(Constantes.CaracterDelimitador); ECidade cidadeOrigem = (ECidade)Enum.Parse(typeof(ECidade), informacoesEncomenda[0], true); ECidade cidadeDestino = (ECidade)Enum.Parse(typeof(ECidade), informacoesEncomenda[1], true); Trecho trechoDireto = trechosCadastrados.FirstOrDefault(t => t.CidadeOrigem == cidadeOrigem && t.CidadeDestino == cidadeDestino); if (trechoDireto != null) { return($"{trechoDireto.CidadeOrigem.ToString()} {trechoDireto.CidadeDestino.ToString()} {trechoDireto.QuantidadeDias}"); } List <Trecho> trechosParaDestino = trechosCadastrados.Where(t => t.CidadeOrigem == cidadeOrigem).ToList(); int maximoRotas = 8; List <Trecho> rotasEncontradas = BuscarProximaRota(cidadeOrigem, cidadeDestino, trechosParaDestino, trechosCadastrados, maximoRotas); if (rotasEncontradas != null) { Trecho ultimoRotaEncontrada = rotasEncontradas.Last(); Trecho proximaRota = trechosParaDestino.FirstOrDefault(t => t.CidadeDestino == ultimoRotaEncontrada.CidadeOrigem); rotasEncontradas.Add(proximaRota); rotasEncontradas.Reverse(); int totalDias = rotasEncontradas.Sum(t => t.QuantidadeDias); return($"{String.Join(" ", rotasEncontradas.Select(x => String.Join(" ", x.CidadeOrigem.ToString())))} {cidadeDestino.ToString()} {totalDias}"); } return($"{cidadeOrigem.ToString()} {cidadeDestino.ToString()} N/D"); }
public void avancar(int posicao = 0) { var filhos = historia.filhosDoTrecho(trechoAtual); trechoAtual = filhos[posicao]; renderizaTrechoAtual(); }
public void avancar(Trecho trecho) { var filhos = historia.filhosDoTrecho(trechoAtual); int i = filhos.IndexOf(trecho); avancar(i); }
private void AdicionaTrecho(Voo voo, UberAir air = null, Planes plane = null) { if (plane != null) { var trecho = new Trecho(); trecho.Origem = plane.Origem; trecho.Destino = plane.Destino; trecho.Saida = plane.Data_Saida.AddHours(plane.Saida.Hour).AddMinutes(plane.Saida.Minute); trecho.Chegada = plane.Data_Saida.AddHours(plane.Chegada.Hour).AddMinutes(plane.Chegada.Minute); trecho.Operadora = "99Planes"; trecho.Preco = plane.Valor; voo.Trechos.Add(trecho); } if (air != null) { var trecho = new Trecho(); trecho.Origem = air.AeroportoOrigem; trecho.Destino = air.AeroportoDestino; trecho.Saida = air.Data.AddHours(air.HorarioSaida.Hour).AddMinutes(air.HorarioSaida.Minute); trecho.Chegada = air.Data.AddHours(air.HorarioChegada.Hour).AddMinutes(air.HorarioChegada.Minute); trecho.Operadora = "UberAir"; trecho.Preco = air.Preco; voo.Trechos.Add(trecho); } }
private Trecho MapearTrechoDtoParaTrecho(TrechoRequestDto trechoDto) { var origem = localRepository.ObterLocal(trechoDto.IdOrigem); var destino = localRepository.ObterLocal(trechoDto.IdDestino); var trecho = new Trecho(origem, destino); return(trecho); }
public ReservaResponseDto(int id, ClasseDeVoo classeDeVoo, Trecho trecho, double valorTotal, int idUsuario) { this.ClasseDeVoo = classeDeVoo; this.Trecho = trecho; this.ValorTotal = valorTotal; this.Id = id; this.Opcionais = new List <Opcional>(); this.IdUsuario = idUsuario; }
private Tuple <string, string> GerarEncomendaFormatada(List <Trecho> trechos) { Trecho trecho = trechos.First(); string encomenda = $"{trecho.CidadeOrigem.ToString()};{trecho.CidadeDestino.ToString()}"; string rota = $"{trecho.CidadeOrigem.ToString()} {trecho.CidadeDestino.ToString()} {trecho.QuantidadeDias}"; return(new Tuple <string, string>(encomenda, rota)); }
/// <summary> /// Start is called on the frame when a script is enabled just before /// any of the Update methods is called the first time. /// </summary> void Start() { historia = ComposicaoHistoria.historia; trechoAtual = historia.getInicio(); renderizaTrechoAtual(); proximoTrecho.GetComponent <Button>().onClick.AddListener(delegate { avancar(0); }); }
public void Deve_Ter_O_Mesmo_Hashcode_Se_Comparado_A_Outro_Igual() { var primeiro = Trecho.Novo().ComDestinoA("juazeiro") .ComOrigemEm("fortaleza"); var segundo = Trecho.Novo().ComDestinoA("juazeiro") .ComOrigemEm("fortaleza"); Assert.AreEqual(primeiro.GetHashCode(), segundo.GetHashCode()); }
public void Sao_Iguais_Se_Origem_E_Destino_Forem_Iguais() { var primeiro = Trecho.Novo().ComDestinoA("juazeiro") .ComOrigemEm("fortaleza"); var segundo = Trecho.Novo().ComDestinoA("juazeiro") .ComOrigemEm("fortaleza"); Assert.True(primeiro.Equals(segundo)); }
public void DeveConverterTrechoInformado() { Trecho expected = NovoTrechoValido(); List <string> trecho = GerarTrechoValidoEFormatado(); List <Trecho> result = _converterTrecho.Converter(trecho); Assert.Contains(result, e => e.CidadeOrigem == expected.CidadeOrigem && e.CidadeDestino == expected.CidadeDestino && e.QuantidadeDias == expected.QuantidadeDias); }
public Trecho AtualizarTrecho(int id, Trecho trecho) { var trechoCadastrado = contexto.Trechos.FirstOrDefault(p => p.Id == id); if (trechoCadastrado != null) { trechoCadastrado.Atualizar(trechoCadastrado); } return(trechoCadastrado); }
//TRECHOS public List <Trecho> TodosTrechos(List <Barra> listabarras, Barra barra) { List <Trecho> lista = new List <Trecho>(); Trecho trecho = null; Barra barra1 = null; Barra barra2 = null; int LineCount = DSSLines.First; for (int i = 0; i < this.DSSLines.Count; i++) { trecho = new Trecho(); DSSLines = DSSCircuit.Lines; trecho.CodTrecho = DSSLines.Name; DSSCircuit.SetActiveElement(trecho.CodTrecho); DSSLineCodes.Name = DSSLines.LineCode; trecho.INom = DSSLineCodes.NormAmps; trecho.IAtual = DSSCktElement.CurrentsMagAng[0]; trecho.Comprimento = DSSLines.Length; barra1 = new Barra(); trecho.barra1 = this.getBarra(DSSLines.Bus1.Split('.')[0].ToString(), listabarras); barra2 = new Barra(); trecho.barra2 = this.getBarra(DSSLines.Bus2.Split('.')[0].ToString(), listabarras); trecho.Parametro = DSSLines.LineCode; if (trecho.barra1 != null) { if (this.getBarra(trecho.barra1.CodBarra, listabarras).Rede == barra.Rede) { lista.Add(trecho); } } else if (trecho.barra2 != null) { if (this.getBarra(trecho.barra2.CodBarra, listabarras).Rede == barra.Rede) { lista.Add(trecho); } } LineCount = DSSLines.Next; } return(lista); }
public void TestandoCalculoDeDistancia() { var origem = new Local("New York", "Ta no meio de Manhattan", 40.76, -73.984); var destino = new Local("Roma", "Ta no coliseu de Roma", 41.89, 12.492); var trecho = new Trecho(origem, destino); double esperado = Math.Floor(4279.9454); double resultado = trecho.DistanciaTotal; Assert.AreEqual(esperado, resultado); }
public Trecho AtualizarTrecho(int id, Trecho trecho) { var classeDeVooCadastrada = contexto.Trechos.Include(a => a.LocalOrigem).Include(a => a.LocalDestino).FirstOrDefault(a => a.Id == id); if (classeDeVooCadastrada != null) { classeDeVooCadastrada.Atualizar(trecho); } return(classeDeVooCadastrada); }
public Historia historiaDeExemplo() { var historia = new Historia(); historia.nome = "Pânico na estrada"; historia.descricao = "Uma família viajando a noite em uma estrada no meio da floresta, encontra um estranho"; historia.autor = "rafante2"; historia.thumbnail = "estrada_floresta_noite"; var texto = ""; texto = "Onde estou? Quanto sangue! Meu Deus! Lora! Dane! Cadê vocês!?"; var inicio = new Trecho(TipoTrecho.NORMAL, 0, texto); texto = "Elas não estão no carro. Me lembro de ter desviado de um homem na pista."; var t1 = new Trecho(TipoTrecho.NORMAL, 1, texto); texto = "Acho que o carro acabou saindo da estrada e batido nessa árvore"; var t2 = new Trecho(TipoTrecho.NORMAL, 2, texto); texto = "Onde elas podem estar? Não sei se procuro na floresta ou na estrada"; var t3 = new Trecho(TipoTrecho.NORMAL, 3, texto); texto = "Esta floresta é muito densa, não tem como elas terem vindo por aqui. Preciso voltar"; var t4 = new Trecho(TipoTrecho.NORMAL, 4, texto); t4.textoCondicao = "Ir pela floresta"; texto = "Uma hora andando nesta estrada e até agora nem uma viva alma"; var t5 = new Trecho(TipoTrecho.NORMAL, 5, texto); t5.textoCondicao = "Ir pela estrada"; t1.setPai(inicio); t2.setPai(t1); t3.setPai(t2); t4.setPai(t3); t5.setPai(t3); var trechos = new Trecho[6]; trechos[0] = inicio; trechos[1] = t1; trechos[2] = t2; trechos[3] = t3; trechos[4] = t4; trechos[5] = t5; historia.trechos = trechos; Sincronizador.salvarHistoria(historia, true); return(historia); }
public void Posso_Cadastralo() { var quantidadeEsperada = 1; var todosOsTrechos = new CadastroDeTrechos(); var trecho = Trecho.Novo() .ComOrigemEm("fortaleza") .ComDestinoA("juazeiro do norte") .ComPreco(70m); todosOsTrechos.adiciona(trecho); Assert.AreEqual(quantidadeEsperada, todosOsTrechos.Total); }
public void TestandoDadosDeDestinoFaltando() { var erros = new List <string>(); erros.Add("Campo Destino é obrigatorio"); var origem = new Local("New York", "Ta no meio de Manhattan", 40.76, -73.984); var trecho = new Trecho(origem, null); var trechoService = new TrechoService(); var resultado = trechoService.Validar(trecho); CollectionAssert.AreEqual(erros, resultado); }
public void TestandoDadosDeOrigemFaltando() { var erros = new List <string>(); erros.Add("Campo Origem é obrigatorio"); var destino = new Local("Roma", "Ta no coliseu de Roma", 41.89, 12.492); var trecho = new Trecho(null, destino); var trechoService = new TrechoService(); var resultado = trechoService.Validar(trecho); CollectionAssert.AreEqual(erros, resultado); }
public IActionResult Post([FromBody] TrechoDto trechoRequest) { var origem = localRepository.Obter(trechoRequest.IdOrigem); var destino = localRepository.Obter(trechoRequest.IdDestino); var distancia = CalcularDistancia(origem, destino); var trecho = new Trecho(origem, destino, distancia); var mensagens = trechoService.Validar(trecho); if (mensagens.Count() > 0) { return(NotFound()); } trechoRepository.SalvarTrecho(trecho); contexto.SaveChanges(); return(CreatedAtRoute("GetTrecho", new { id = trecho.Id }, trecho)); }
public List <string> Validar(Trecho trecho) { List <string> mensagens = new List <string>(); if (trecho.Origem == null) { mensagens.Add("É necessário informar a Origem"); } if (trecho.Destino == null) { mensagens.Add("É necessário informar o Destino"); } return(mensagens); }
private void BtnAddTrecho_Click(object sender, RoutedEventArgs e) { if (!String.IsNullOrEmpty(txtTrecho.Text) && !String.IsNullOrEmpty(txtTrecho.Text) && !String.IsNullOrEmpty(txtTrecho.Text)) { Trecho tr = new Trecho { NomeTrecho = txtTrecho.Text, PontoInicial = txtPontoIni.Text, PontoFinal = txtPontoFin.Text }; listaDeTrechos.Add(tr); txtPontoIni.Text = txtPontoFin.Text; txtPontoFin.Text = ""; txtTrecho.Text = ""; } else { MessageBox.Show("Informação faltante no trecho, é necessário inserir todas as informações!"); } }
public void Posso_Cadastrar_Viagem() { var qtdEsperada = 1; var cadastroDeViagens = new CadastroDeViagens(); var trecho = Trecho.Novo() .ComOrigemEm("fortaleza") .ComDestinoA("juazeiro do norte"); var viagem = Viagem.Nova(trecho) .SaindoAs(new DateTime(2011, 05, 08, 09, 00, 00)) .ChegandoAs(new DateTime(2011, 05, 08, 18, 00, 00)); cadastroDeViagens.adiciona(viagem); Assert.AreEqual(qtdEsperada, cadastroDeViagens.Total); }
public List <Barra> GetBus(int hora) { List <Barra> buses = new List <Barra>(); Trecho trecho = new Trecho(); Barra barra1 = null; Barra barra2 = null; bool verificararquivoderede = this.RunFile(); bool solve = this.SolveH(hora); int LineCount = DSSLines.First; for (int i = 0; i < this.DSSLines.Count; i++) { trecho = new Trecho(); if (DSSCktElement.CurrentsMagAng[0] > 0.1) { barra1 = new Barra { CodBarra = DSSLines.Bus1.Split('.')[0], }; trecho.barra1 = barra1; barra2 = new Barra { CodBarra = DSSLines.Bus2.Split('.')[0], }; } if (!buses.Contains(barra1)) { buses.Add(barra1); } if (!buses.Contains(barra2)) { buses.Add(barra2); } LineCount = DSSLines.Next; } return(buses); }
public void TestaServiceCalculoValorTotal() { var usuario = new Usuario("Pedroka", "Silva", "12345678910", DateTime.Today, "*****@*****.**", "opa"); var classeVoo = new ClasseDeVoo("top", 500, 25); var origem = new Local("New York", "Ta no meio de Manhattan", 40.76, -73.984); var destino = new Local("Roma", "Ta no coliseu de Roma", 41.89, 12.492);//4279 var trecho = new Trecho(origem, destino); var reserva = new Reserva(classeVoo, trecho, usuario); var valorTotalResultado = reserva.ValorTotal; var valorEsperado = 107475; Assert.AreEqual(valorEsperado, valorTotalResultado); }
public void Posso_Pesquisar_Viagens() { var cidadeOrigem = "fortaleza"; var cidadeDestino = "juazeiro do norte"; var partindoEm = new DateTime(2011, 05, 07); var trecho = Trecho.Novo() .ComOrigemEm(cidadeOrigem) .ComDestinoA(cidadeDestino); var juazeiroFortaleza = Viagem.Nova(trecho) .SaindoAs(new DateTime(2011, 05, 08, 09, 00, 00)) .ChegandoAs(new DateTime(2011, 05, 08, 18, 00, 00)); var viagensDisponiveis = cadastroDeViagens.pesquisa(cidadeOrigem, cidadeDestino, partindoEm); Assert.True(viagensDisponiveis.Select(a => a.Trecho).Contains(trecho)); }
public static List <string> Validar(Trecho trecho) { List <string> inconsistencias = new List <string>(); if (string.IsNullOrEmpty(trecho.Nome?.Trim())) { inconsistencias.Add($"O campo {nameof(trecho.Nome)} não pode ser nulo."); } if (GeoCalculator.GetDistance( trecho.LocalA.LatitudeLocal, trecho.LocalA.LongitudeLocal, trecho.LocalB.LatitudeLocal, trecho.LocalB.LongitudeLocal, 1) == 0) { inconsistencias.Add($"Os campos {nameof(trecho.LocalA)} e {nameof(trecho.LocalB)} não podem ser o mesmo."); } return(inconsistencias); }
public List <string> Validar(Trecho trecho) { List <string> mensagens = new List <string>(); if (trecho.Origem == null) { mensagens.Add("Campo Origem é obrigatorio"); } if (trecho.Destino == null) { mensagens.Add("Campo Destino é obrigatorio"); } if (trecho.Origem == trecho.Destino) { mensagens.Add("Origem e destino precisam ser diferentes"); } return(mensagens); }
public bool TrechoEhValido(Trecho trecho) { return !(trecho.KmFinal <= trecho.kmInicial); }