/// Remove um carro que esteja selecionado
        private void buttonRemoverCarroOficina_Click(object sender, EventArgs e)
        {
            Cliente      selectedCliente      = (Cliente)listBoxClientesOficina.SelectedItem;
            CarroOficina selectedCarroOficina = (CarroOficina)listBoxCarrosOficina.SelectedItem;

            if (MessageBox.Show("Ao remover o carro da oficina todas as sua informações, serviços e parcelas serão eliminadas." +
                                " \nTem a certeza que quer continuar? ", "Confirmação",
                                MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) == DialogResult.Yes)
            {
                standContainer.Carros.Remove(selectedCarroOficina);
                standContainer.SaveChanges();
                listBoxCarrosOficina.DataSource   = selectedCliente.CarroOficina.ToList();
                buttonRemoverCarroOficina.Enabled = false;
                CleanInputCarroOficina();
                listBoxCarrosOficina.SelectedIndex = -1;
                buttonRemoverCarroOficina.Enabled  = false;
                buttonEditarCarroOficina.Enabled   = false;
                CleanInputServicosOficina();
                listBoxServicosOficina.DataSource = null;
                listBoxParcelasOficina.DataSource = null;
                labelTotalClienteOficina.Text     = selectedCliente.GetTotal();
                groupBoxServicosOficina.Enabled   = false;
                groupBoxParcelasOficina.Enabled   = false;
            }
        }
        /// Mostra todos os serviços do carro selecionado da oficina
        private void listBoxCarrosOficina_Click(object sender, EventArgs e)
        {
            CarroOficina selectedCarroOficina = (CarroOficina)listBoxCarrosOficina.SelectedItem;

            try
            {
                listBoxServicosOficina.DataSource   = selectedCarroOficina.Servico.ToList();
                groupBoxServicosOficina.Enabled     = true;
                buttonRemoverServicoOficina.Enabled = false;
                buttonEmitirFaturaOficina.Enabled   = false;
                buttonRemoverCarroOficina.Enabled   = true;
                groupBoxCriarCarroOficina.Enabled   = false;
                buttonEditarServicoOficina.Enabled  = false;
                buttonCriarServicoOficina.Enabled   = true;
                groupBoxCriarServicoOficina.Enabled = false;
                groupBoxParcelasOficina.Enabled     = false;
            }
            catch (System.NullReferenceException)
            {
                return;
            }

            //Mete a listbox dos serviços da oficina sem nenhum item selecionado
            listBoxServicosOficina.SelectedIndex = -1;
            listBoxParcelasOficina.DataSource    = null;
            buttonEditarCarroOficina.Enabled     = true;

            //Preenche textboxes com as informações do carro
            maskedTextBoxMatriculaOficina.Text = selectedCarroOficina.Matricula;
            numericUpDownKMsOficina.Text       = selectedCarroOficina.Kms.ToString();
            maskedTextBoxChassiOficina.Text    = selectedCarroOficina.NumeroChassis;
            textBoxMarcaOficina.Text           = selectedCarroOficina.Marca;
            textBoxModeloOficina.Text          = selectedCarroOficina.Modelo;
            switch (selectedCarroOficina.Combustivel)
            {
            case "Gasóleo":
                comboBoxCombustivelOficina.SelectedIndex = 0;
                break;

            case "Gasolina":
                comboBoxCombustivelOficina.SelectedIndex = 1;
                break;

            case "Diesel":
                comboBoxCombustivelOficina.SelectedIndex = 2;
                break;

            case "Gás":
                comboBoxCombustivelOficina.SelectedIndex = 3;
                break;

            case "Híbrido":
                comboBoxCombustivelOficina.SelectedIndex = 4;
                break;
            }
            CleanInputServicosOficina();
        }
Exemplo n.º 3
0
        private void buttonAdicionarServico_Click(object sender, EventArgs e)
        {
            CarroOficina carroSelecionado = (CarroOficina)listBoxCarroOficina.SelectedItem;
            Servico      novoServico      = new Servico(comboBoxServico.Text, dateTimePickerServico.Value.Date.ToShortDateString());

            carroSelecionado.Servico.Add(novoServico);
            meuStand.Servico.Add(novoServico);
            meuStand.SaveChanges();

            listBoxServico.DataSource = null;
            listBoxServico.DataSource = carroSelecionado.Servico.ToList <Servico>();
        }
Exemplo n.º 4
0
        private void buttonAdicionarCarro_Click(object sender, EventArgs e)
        {
            Cliente clienteSelecionado = (Cliente)listBoxClientes.SelectedItem;

            CarroOficina novoCarro = new CarroOficina(textBoxNumeroChassis.Text, textBoxMarca.Text, textBoxModelo.Text, textBoxCombustivel.Text, textBoxMatricula.Text, textBoxKlms.Text);

            clienteSelecionado.CarroOficina.Add(novoCarro);

            meuStand.Carro.Add(novoCarro);
            meuStand.SaveChanges();
            listBoxCarroOficina.DataSource = null;
            listBoxCarroOficina.DataSource = clienteSelecionado.CarroOficina.ToList <CarroOficina>();
        }
Exemplo n.º 5
0
 private void listBoxCarroOficina_SelectedIndexChanged(object sender, EventArgs e)
 {
     try
     {
         CarroOficina carroSelecionado = (CarroOficina)listBoxCarroOficina.SelectedItem;
         CarregarDadosServico();
         listBoxServico.DataSource = null;
         listBoxServico.DataSource = carroSelecionado.Servico.ToList <Servico>();
     }
     catch (Exception)
     {
         return;
     }
 }
Exemplo n.º 6
0
        ///Cria ou altera um carro de aluguer
        private void buttonGuardarCarroAluguer_Click(object sender, EventArgs e)
        {
            if (CarroOficina.VerificaMatricula(maskedTextBoxMatriculaAluguer.Text) &&
                Carro.VerificaNumeroChassis(numeroChassisMaskedTextBox.Text) &&
                Carro.VerificaMarca(textBoxMarcaAluguer.Text) &&
                Carro.VerificaModelo(textBoxModeloAluguer.Text) &&
                Carro.VerificaCombustivel(comboBoxCombustivelAluguer.SelectedIndex))
            {
                if (newCarroAluguer)
                {
                    CarroAluguer carroAluguer = new CarroAluguer(
                        estadoTextBox.Text,
                        maskedTextBoxMatriculaAluguer.Text,
                        numeroChassisMaskedTextBox.Text,
                        textBoxMarcaAluguer.Text,
                        textBoxModeloAluguer.Text,
                        comboBoxCombustivelAluguer.Text
                        );
                    standContainer.Carros.Add(carroAluguer);
                }
                else
                {
                    CarroAluguer selectedCarroAluguer = (CarroAluguer)listBoxCarrosAluguer.SelectedItem;
                    selectedCarroAluguer.NumeroChassis = numeroChassisMaskedTextBox.Text;
                    selectedCarroAluguer.Marca         = textBoxMarcaAluguer.Text;
                    selectedCarroAluguer.Modelo        = textBoxModeloAluguer.Text;
                    selectedCarroAluguer.Combustivel   = comboBoxCombustivelAluguer.Text;
                    selectedCarroAluguer.Estado        = estadoTextBox.Text;
                    selectedCarroAluguer.Matricula     = maskedTextBoxMatriculaAluguer.Text;
                }
                standContainer.SaveChanges();
                listBoxCarrosAluguer.DataSource = standContainer.Carros.OfType <CarroAluguer>().ToList();
                newCarroAluguer = false;
                groupBoxCarroAluguer.Enabled       = false;
                buttonGuardarCarroAluguer.Visible  = false;
                listBoxCarrosAluguer.SelectedIndex = -1;
            }
            else
            {
                MessageBox.Show("Existem campos incompletos.", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
            ClearVehicleDetails();

            // desativa os botoes de editar e apagar
            buttonEditarCarroAluguer.Enabled   = false;
            buttonEliminarCarroAluguer.Enabled = false;
        }
        /// Cria ou edita um servico do carro selecionado
        private void buttonGuardarServicoOficina_Click(object sender, EventArgs e)
        {
            DateTime     DataEntrega          = dateTimePickerDataEntregaOficina.Value;
            DateTime     DataSaida            = dateTimePickerDataSaidaOficina.Value;
            string       TipoServico          = comboBoxTipoServicosOficina.Text;
            CarroOficina selectedCarroOficina = (CarroOficina)listBoxCarrosOficina.SelectedItem;
            Servico      novoServico          = new Servico(DataEntrega, TipoServico, DataSaida);

            if (Servico.VerificaTipoServico(TipoServico) && Servico.VerificaDatasServico(DataEntrega, DataSaida))
            {
                if (novoServicoOficina)
                {
                    selectedCarroOficina.Servico.Add(novoServico);
                }
                else
                {
                    Servico selectedServico = (Servico)listBoxServicosOficina.SelectedItem;
                    selectedServico.DataEntrega = dateTimePickerDataEntregaOficina.Value;
                    selectedServico.DataSaida   = dateTimePickerDataSaidaOficina.Value;
                    selectedServico.Tipo        = comboBoxTipoServicosOficina.Text;
                }
                listBoxServicosOficina.DataSource = selectedCarroOficina.Servico.ToList();
                standContainer.SaveChanges();
                listBoxServicosOficina.SelectedIndex = -1;
                listBoxParcelasOficina.SelectedIndex = -1;
                groupBoxCriarServicoOficina.Enabled  = false;
                listBoxParcelasOficina.SelectedIndex = -1;
                groupBoxCriarParcelaOficina.Enabled  = false;
                CleanInputServicosOficina();
            }
            else if (!Servico.VerificaDatasServico(DataEntrega, DataSaida))
            {
                MessageBox.Show("A data de entrada não pode ser mais recente que a data de saída.",
                                "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else if (!Servico.VerificaTipoServico(TipoServico))
            {
                MessageBox.Show("Tipo de serviço não selecionado.", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        /// Remove um servico que esteja selecionado
        private void buttonRemoverServicoOficina_Click(object sender, EventArgs e)
        {
            Servico      selectedServico      = (Servico)listBoxServicosOficina.SelectedItem;
            CarroOficina selectedCarroOficina = (CarroOficina)listBoxCarrosOficina.SelectedItem;

            if (MessageBox.Show("Ao remover o serviço todas as suas informações e parcelas serão eleminadas. \nTem a certeza que quer continuar? "
                                , "Confirmação", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) == DialogResult.Yes)
            {
                standContainer.Servicos.Remove(selectedServico);
                standContainer.SaveChanges();
                listBoxServicosOficina.DataSource         = selectedCarroOficina.Servico.ToList();
                dateTimePickerDataEntregaOficina.Text     = null;
                dateTimePickerDataSaidaOficina.Text       = null;
                comboBoxTipoServicosOficina.SelectedIndex = -1;
                buttonRemoverServicoOficina.Enabled       = false;
                buttonEmitirFaturaOficina.Enabled         = false;
                buttonEditarServicoOficina.Enabled        = false;
                listBoxParcelasOficina.DataSource         = null;
                groupBoxCriarParcelaOficina.Enabled       = false;
                Cliente selectedCliente = (Cliente)listBoxClientesOficina.SelectedItem;
                labelTotalClienteOficina.Text = selectedCliente.GetTotal();
            }
        }
        /// Cria ou edita um carro do cliente que esteja selecionado
        private void buttonGuardarCarroOficina_Click(object sender, EventArgs e)
        {
            Cliente selectedCliente = (Cliente)listBoxClientesOficina.SelectedItem;
            string  matricula       = maskedTextBoxMatriculaOficina.Text;
            int     kms             = int.Parse(numericUpDownKMsOficina.Text);
            string  numeroChassis   = maskedTextBoxChassiOficina.Text;
            string  marca           = textBoxMarcaOficina.Text;
            string  modelo          = textBoxModeloOficina.Text;
            string  combustivel     = comboBoxCombustivelOficina.Text;

            if (CarroOficina.VerificaMatricula(matricula) && CarroOficina.VerificaKMs(kms) &&
                Carro.VerificaNumeroChassis(numeroChassis) && Carro.VerificaMarca(marca) &&
                Carro.VerificaModelo(modelo) && Carro.VerificaCombustivel(comboBoxCombustivelOficina.SelectedIndex))
            {
                if (novoCarroOficina) //Criar novo
                {
                    CarroOficina novoCarroOficina = new CarroOficina(matricula, kms, numeroChassis, marca, modelo, combustivel);
                    try
                    {
                        selectedCliente.CarroOficina.Add(novoCarroOficina);
                    }
                    catch (System.NullReferenceException)
                    {
                        return;
                    }
                }
                else //Editar Carro
                {
                    CarroOficina selectedCarroOficina = (CarroOficina)listBoxCarrosOficina.SelectedItem;
                    selectedCarroOficina.Matricula     = maskedTextBoxMatriculaOficina.Text;
                    selectedCarroOficina.Kms           = int.Parse(numericUpDownKMsOficina.Text);
                    selectedCarroOficina.NumeroChassis = maskedTextBoxChassiOficina.Text;
                    selectedCarroOficina.Marca         = textBoxMarcaOficina.Text;
                    selectedCarroOficina.Modelo        = textBoxModeloOficina.Text;
                    selectedCarroOficina.Combustivel   = comboBoxCombustivelOficina.Text;
                }
                standContainer.SaveChanges();
                listBoxCarrosOficina.DataSource      = selectedCliente.CarroOficina.ToList();
                listBoxServicosOficina.SelectedIndex = -1;
                listBoxCarrosOficina.SelectedIndex   = -1;
                listBoxParcelasOficina.SelectedIndex = -1;
                groupBoxCriarParcelaOficina.Enabled  = false;
                CleanInputCarroOficina();
                groupBoxCriarCarroOficina.Enabled = false;
                buttonCriarServicoOficina.Enabled = false;
            }
            else if (!CarroOficina.VerificaMatricula(matricula))
            {
                MessageBox.Show("Matricula inválida", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else if (!CarroOficina.VerificaKMs(kms))
            {
                MessageBox.Show("Quilometragem inválida", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else if (!Carro.VerificaNumeroChassis(numeroChassis))
            {
                MessageBox.Show("Número de Chassi incompleto. São 17 caracteres", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else if (!Carro.VerificaMarca(marca))
            {
                MessageBox.Show("Marca não inserida", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else if (!Carro.VerificaModelo(modelo))
            {
                MessageBox.Show("Modelo não inserido", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else if (!Carro.VerificaCombustivel(comboBoxCombustivelOficina.SelectedIndex))
            {
                MessageBox.Show("Combustível não selecionado", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }