private void ChangeBtn_Click(object sender, EventArgs e) { if (dataGridView1.SelectedRows.Count != 0) { try { string filterCar = $"Number='{this.carComboBox.With(x => x.SelectedItem)}'"; string filterOwner = $"NumberLicense='{this.ownerComboBox.With(x => x.SelectedItem)}'"; Owner owner = owners.With(x => x.Select(filterOwner)).With(x => x.First()) as Owner; Car car = cars.With(x => x.Select(filterCar)).With(x => x.First()) as Car; CarOwner carOwner = carOwners.FirstOrDefault(x => carOwnerId == x.Id); carOwner.CarId = car.Id; carOwner.OwnerId = owner.Id; } catch (NullReferenceException) { MessageBox.Show("Один из параметров не задан либо не выбран"); } catch (Exception) { } UpdateDB(); } else { MessageBox.Show("Выберите строку для редактирования", "Ошибка"); } }
private void AddBtn_Click(object sender, EventArgs e) { try { string number = numberTextBox.Text.Trim(); string filterModel = $"NameModel='{ModelComboBox.With(x => x.SelectedItem)}'"; string filterMark = $"MarkName='{MarkComboBox.With(x => x.SelectedItem)}'"; if (string.IsNullOrEmpty(number)) { MessageBox.Show("Номер машины не задан!"); return; } Model model = _models.With(x => x.Select(filterModel)).With(x => x.First()) as Model; Mark mark = _marks.With(x => x.Select(filterMark)).With(x => x.First()) as Mark; Car car = _cars.NewCarRow(); car.DateRegGAI = dateReg.Value; car.Number = number; car.ModelId = model.Id; car.MarkId = mark.Id; _cars.AddCarRow(car); UpdateCarsDB(); } catch (NullReferenceException) { MessageBox.Show("Один из параметров не задан либо не выбран"); } catch (Exception) { } }
private void ChangeBtn_Click(object sender, EventArgs e) { if (dataGridView1.SelectedRows.Count != 0) { try { Car car = _cars.Where(x => x.Id == _carId).First(); string filterModel = $"NameModel='{ModelComboBox.With(x => x.SelectedItem)}'"; string filterMark = $"MarkName='{MarkComboBox.With(x => x.SelectedItem)}'"; Mark mark = _marks.With(x => x.Select(filterMark)).With(x => x.First()) as Mark; Model model = _models.With(x => x.Select(filterModel)).With(x => x.First()) as Model; car.MarkId = mark.Id; car.ModelId = model.Id; car.Number = numberTextBox.Text; car.DateRegGAI = dateReg.Value; } catch (NullReferenceException) { MessageBox.Show("Один из параметров не задан либо не выбран"); } catch (Exception) { } UpdateCarsDB(); } else { MessageBox.Show("Выберите строку для редактирования", "Ошибка"); } }
private void DataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) { try { DataGridViewRow row = dataGridView1.Rows[e.RowIndex]; carOwnerId = Convert.ToInt32(row.Cells[0].Value); CarOwner carOwner = carOwners.FirstOrDefault(x => x.Id == carOwnerId); Car car = carOwner.GetParentRows(relations["CarCarOwner"]).With(x => x.First()) as Car; Owner owner = carOwner.GetParentRows(relations["OwnerCarOwner"]).With(x => x.First()) as Owner; this.carComboBox.SelectedItem = car.Number; this.ownerComboBox.SelectedItem = owner.NumberLicense; } catch (Exception) { } }
private void DataGridView1_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) { try { DataGridViewRow row = dataGridView1.Rows[e.RowIndex]; _carId = Convert.ToInt32(row.Cells[0].Value); Car car = _cars.Select($"Id='{_carId}'").First() as Car; Model model = car.GetParentRows(_relations["ModelCar"]).With(x => x.First()) as Model; Mark mark = car.GetParentRows(_relations["MarkCar"]).With(x => x.First()) as Mark; numberTextBox.Text = car.Number; dateReg.Value = car.DateRegGAI; ModelComboBox.SelectedItem = model.NameModel; MarkComboBox.SelectedItem = mark.MarkName; } catch (Exception) { MessageBox.Show("Выберите строку для редактирования", "Ошибка"); } }
private void AddBtn_Click(object sender, EventArgs e) { try { string filterCar = $"Number='{this.carComboBox.With(x => x.SelectedItem)}'"; string filterOwner = $"NumberLicense='{this.ownerComboBox.With(x => x.SelectedItem)}'"; Owner owner = owners.With(x => x.Select(filterOwner)).With(x => x.First()) as Owner; Car car = cars.With(x => x.Select(filterCar)).With(x => x.First()) as Car; CarOwner carOwner = this.carOwners.NewCarOwnerRow(); carOwner.CarId = car.Id; carOwner.OwnerId = owner.Id; this.carOwners.AddCarOwnerRow(carOwner); UpdateDB(); } catch (NullReferenceException) { MessageBox.Show("Один из параметров не задан либо не выбран"); } catch (Exception) { } }
private void button2_Click(object sender, EventArgs e) { if (openFileDialog1.ShowDialog() != DialogResult.OK) { return; } string path = openFileDialog1.FileName; if (!File.Exists(path)) { MessageBox.Show("Файл не найден!!"); return; } int i; for (i = 3;; i++) { string value = null; if (string.IsNullOrEmpty(value?.Trim())) { break; } Car car = _cars.FirstOrDefault(x => x.Number == value); if (car != null) { break; } car = _cars.NewCarRow(); car.Number = value; _cars.AddCarRow(car); } UpdateCarsDB(); }
private void DeleteBtn_Click(object sender, EventArgs e) { if (dataGridView1.SelectedRows.Count != 0) { string message = "Вы действительно хотите удалить запись ? "; DialogResult response = MessageBox.Show(message, "Подтверждение", MessageBoxButtons.YesNo); if (response == DialogResult.Yes) { try { Car car = _cars.FirstOrDefault(x => x.Id == _carId); car.Delete(); } catch (Exception) { } UpdateCarsDB(); } } else { MessageBox.Show("Выберите строку для удаления", "Ошибка"); } }
private void button5_Click(object sender, EventArgs e) { using (SaveFileDialog saveFileDialog = new SaveFileDialog()) { saveFileDialog.FileName = "index.html"; saveFileDialog.Filter = "html (*.html)|*.html"; if (saveFileDialog.ShowDialog() == DialogResult.OK) { string path = saveFileDialog.FileName; using (StreamWriter streamWriter = new StreamWriter(new FileStream(path, FileMode.OpenOrCreate))) { streamWriter.WriteLine(@" <!doctype html> <html> <head> <title>Список владельцев и машин</title> <meta charset='UTF-8'/> <style> table { border-collapse: collapse; border: 4px double black; } th { text-align: left; background: #8BC34A; padding: 5px; border: 1px solid black; } td { padding: 5px; border: 1px solid black; } </style> </head> <body> <h1>Список владельцев и машин</h1> <table> <tr> <th>Id владельцев</th> <th>ФИО</th> <th>Номер авто</th> <th>Марка</th> </tr> "); foreach (Owner owner in dB_OwnersCarsDataSet.Owner) { CarOwner[] carOwners = owner.GetChildRows("OwnerCarOwner") as CarOwner[]; foreach (CarOwner carOwner in carOwners) { Car car = dB_OwnersCarsDataSet.Car.FirstOrDefault(x => x.Id == carOwner.CarId); Mark mark = dB_OwnersCarsDataSet.Mark.FirstOrDefault(x => x.Id == car?.MarkId); streamWriter.Write("<tr>"); streamWriter.WriteLine($"<td>{owner.Id}</td>"); streamWriter.WriteLine($"<td>{owner.FIO()}</td>"); streamWriter.WriteLine($"<td>{car?.Number}</td>"); streamWriter.WriteLine($"<td>{mark?.MarkName}</td>"); streamWriter.Write("</tr>"); } } streamWriter.WriteLine(@" </table> </body> </html> "); } } } }
private void Button3_Click(object sender, EventArgs e) { (_excelApplication, _workSheet) = this.OpenExcelDocument($@"{_pathToExcelDirectory}\spisokCar.xlsx"); PutCell("F1", DateTime.Now.ToShortDateString()); for (int i = 0; i < dB_OwnersCarsDataSet.Car.Count; i++) { string number = (i + 6).ToString(); Car car = dB_OwnersCarsDataSet.Car[i]; Model model = dB_OwnersCarsDataSet.Model.FirstOrDefault(x => x.Id == car.ModelId); Mark mark = dB_OwnersCarsDataSet.Mark.FirstOrDefault(x => x.Id == car.MarkId); PutCellBorder($"A{number}", car.Id.ToString()); PutCellBorder($"B{number}", car.Number.ToString()); PutCellBorder($"C{number}", car.DateRegGAI.ToString()); PutCellBorder($"D{number}", model.NameModel); PutCellBorder($"E{number}", mark.MarkName); } _excelApplication.Visible = true; (_excelApplication, _workSheet) = this.OpenExcelDocument($@"{_pathToExcelDirectory}\spisokCarOwner.xlsx"); PutCell("D1", DateTime.Now.ToShortDateString()); int numCell = 6; foreach (Owner owner in dB_OwnersCarsDataSet.Owner) { CarOwner[] carOwners = owner.GetChildRows("OwnerCarOwner") as CarOwner[]; PutCell($"A{numCell}", owner.FIO()); _range = _workSheet.get_Range($"A{numCell}", $"D{numCell}"); _range.Merge(Type.Missing); _range.Font.Bold = true; _range.Font.Italic = true; _range.Interior.ColorIndex = 34; _range.BorderAround( Excel.XlLineStyle.xlContinuous, Excel.XlBorderWeight.xlThin, Excel.XlColorIndex.xlColorIndexAutomatic, Type.Missing ); _range.HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter; foreach (CarOwner carOwner in carOwners) { Car car = dB_OwnersCarsDataSet.Car.FirstOrDefault(x => x.Id == carOwner.CarId); Mark mark = dB_OwnersCarsDataSet.Mark.FirstOrDefault(x => x.Id == car.MarkId); PutCellBorder($"A{numCell + 1}", car.Id.ToString()); PutCellBorder($"B{numCell + 1}", owner.FIO()); PutCellBorder($"C{numCell + 1}", car?.Number); PutCellBorder($"D{numCell + 1}", mark?.MarkName); numCell++; } numCell++; PutCell($"A{numCell}", $"Итого: {carOwners.Length}"); _range = _workSheet.get_Range($"A{numCell}", $"D{numCell}"); _range.Merge(Type.Missing); _range.Font.Italic = true; _range.Interior.ColorIndex = 40; _range.BorderAround( Excel.XlLineStyle.xlContinuous, Excel.XlBorderWeight.xlThin, Excel.XlColorIndex.xlColorIndexAutomatic, Type.Missing ); numCell++; } _excelApplication.Visible = true; }