private void viajar(object sender) { try { //testando se o metodo foi chamado por um botão caso contrario foi o timer Button b = ((Button)sender); while (visitantes.FilaDeVisitantes.Count() != 0 && veiculos.FilaDeVeiculos.Count() != 0) { if (veiculos.FilaDeVeiculos.Peek().Lotacao <= visitantes.FilaDeVisitantes.Count()) { veiculo = veiculos.FilaDeVeiculos.Dequeue(); veiculos.FilaDeVeiculos.Enqueue(veiculo); Viagem viagem = new Viagem(veiculo, DateTime.Now, visitantes.FilaDeVisitantes); viagens.adicionarViagens(viagem); MessageBox.Show("Viagem iniciada via lotação"); } else { break; } } } catch { try { if (visitantes.FilaDeVisitantes.Count() > 0 && veiculos.FilaDeVeiculos.Count() > 0) { veiculo = veiculos.FilaDeVeiculos.Dequeue(); veiculos.FilaDeVeiculos.Enqueue(veiculo); Viagem viagem = new Viagem(veiculo, DateTime.Now, visitantes.FilaDeVisitantes); viagens.adicionarViagens(viagem); MessageBox.Show("Viagem iniciada pelo tempo"); } } catch (Exception ex) { MessageBox.Show(ex.Message); MessageBox.Show("Ninguém viajou"); } //TIMER negando a afirmação, caso haja visitantes o timer continua if (!(visitantes.FilaDeVisitantes.Count() > 0)) { timerTempoRestante.Stop(); } } //atualizando a lista de embarque lstFilaEmbarque.Items.Clear(); foreach (Visitante vis in visitantes.FilaDeVisitantes) { lstFilaEmbarque.Items.Add(vis.dadosDoVisitante()); } }
public Viagem pesquisar(Viagem viagem) { foreach (Viagem vig in listaViagens) { if (viagem.Equals(vig)) { return(vig); } } return(null); }
public bool adicionarViagens(Viagem viagem) { try { this.listaViagens.Enqueue(viagem); return(true); } catch { return(false); } }
public override bool Equals(object obj) { Viagem v = (Viagem)obj; return(this.HoraViagem.Equals(v.HoraViagem)); }