///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 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); } }