Exemplo n.º 1
0
        private void buttonEnviarCidades_Click(object sender, EventArgs e)
        {
            bool verifica = ProgramaFidelidade.ComprarPassagem(cb_formapgto.Text, posicaoCliente, ProgramaFidelidade.LocalizaIdVoo(comboBoxCidadeOrigem.Text, comboBoxCidadeDestino.Text).IdentificaVoo);

            //ProgramaFidelidade.PreencheDados("reservas.txt");
            //ProgramaFidelidade.ExibirDadosCliente(posicaoCliente);

            if (cb_formapgto.SelectedItem == null || comboBoxCidadeDestino.SelectedItem == null || comboBoxCidadeOrigem.SelectedItem == null || textBoxExibirViagens == null)
            {
                MessageBox.Show("Você precisa completar os dados necessários!", "Erro!", MessageBoxButtons.OK);
            }

            else if (verifica == false)
            {
                MessageBox.Show("Houve um erro ao efetuar a compra!", "Erro!", MessageBoxButtons.OK);
            }

            else
            {
                Voo aux = ProgramaFidelidade.LocalizaIdVoo(comboBoxCidadeOrigem.Text, comboBoxCidadeDestino.Text);
                //Cria um voo de acordo com o tipo escolhido
                if (cb_formapgto.Text == "Normal")
                {
                    aux = new Normal(aux.IdentificaVoo, aux.CidadeOrigem, aux.CidadeDestino, DateTime.Now);
                }
                else if (cb_formapgto.Text == "Promocional")
                {
                    aux = new Promocional(aux.IdentificaVoo, aux.CidadeOrigem, aux.CidadeDestino, DateTime.Now);
                }

                else if (cb_formapgto.Text == "Fidelidade")
                {
                    aux = new Fidelidade(aux.IdentificaVoo, aux.CidadeOrigem, aux.CidadeDestino, DateTime.Now);
                    //No caso subtrai o valor da compra (a constante 10.000) do voo no saldo
                }
                //Adiciona o novo tipo de voo dentro da lista do cliente
                ProgramaFidelidade.clientes[posicaoCliente].Voos.Add(aux);

                //Soma o Bonus da compra
                ProgramaFidelidade.clientes[posicaoCliente].PtosSaldo += aux.Bonus;

                this.Close();
                MenuEscolhas form = new MenuEscolhas(posicaoCliente);
                form.Show();
            }
        }