private void Button2_Click(object sender, EventArgs e) { try { if (this._markId == int.MinValue) { MessageBox.Show("Выбирите марку"); return; } AlertForm alertForm = new AlertForm(); if (alertForm.ShowDialog() == DialogResult.OK) { OpenDocument($@"{_pathToDocumentDirectory}\продажа.docx"); Mark mark = dB_OwnersCarsDataSet.Mark.FindById(_markId); ReplaceText("<FIO>", alertForm.FullName); ReplaceText("<Description>", alertForm.Description); ReplaceText("<DateCreation>", alertForm.DateCreation); ReplaceText("<MarkName>", mark.MarkName); ReplaceText("<StateAccurary>", alertForm.StateAccurary); _wordApplication.Visible = true; } else { MessageBox.Show("Error!"); } } catch (Exception) { } }
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_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) { try { DataGridViewRow row = dataGridView1.Rows[e.RowIndex]; _markId = Convert.ToInt32(row.Cells[0].Value); Mark mark = _marks.FirstOrDefault(x => x.Id == _markId); this.markTextBox.Text = mark.MarkName; } catch (Exception) { } }
private void CheckBox1_CheckedChanged(object sender, EventArgs e) { if (markCheckBox.Checked) { string filterMark = $"MarkName='{MarkComboBox.SelectedItem}'"; Mark mark = _marks.Select(filterMark).With(x => x.First()) as Mark; string filterCar = $"MarkId='{mark.Id}'"; carBindingSource.Filter = filterCar; } else { carBindingSource.Filter = ""; } }
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; } Open(path); /*Super logic working with Excel file!! :)*/ Excel.Workbook workbook = _excelApplication.Workbooks.Open(path); _workSheet = workbook.Sheets[1]; Excel.Range cells = _workSheet.UsedRange; int i; // count rows for (i = 3; i <= cells.Count; i++) { string value = cells[i, 2].Text.ToString(); if (string.IsNullOrEmpty(value?.Trim())) { continue; } Mark mark = _marks.FirstOrDefault(x => x.MarkName == value); if (mark != null) { continue; } mark = _marks.NewMarkRow(); mark.MarkName = value; mark.Id = Convert.ToInt32(cells[i, 1].Text); _marks.AddMarkRow(mark); } }
private void MarkBtnChanged_Click(object sender, EventArgs e) { try { string name = this.markTextBox.Text?.Trim(); if (string.IsNullOrEmpty(name)) { MessageBox.Show("Не введено название марки"); return; } Mark mark = _marks.FirstOrDefault(x => x.Id == _markId); mark.MarkName = name; UpdateDB(); } 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 MarkBtnAdded_Click(object sender, EventArgs e) { try { string name = this.markTextBox.Text?.Trim(); if (string.IsNullOrEmpty(name)) { MessageBox.Show("Не введено название марки"); return; } Mark mark = _marks.NewMarkRow(); mark.MarkName = name; _marks.AddMarkRow(mark); UpdateDB(); } catch (Exception) { } }
private void MarkBtnDeleted_Click(object sender, EventArgs e) { if (dataGridView1.SelectedRows.Count != 0) { string message = "Вы действительно хотите удалить запись ? "; DialogResult response = MessageBox.Show(message, "Подтверждение", MessageBoxButtons.YesNo); if (response == DialogResult.Yes) { try { Mark mark = _marks.FirstOrDefault(x => x.Id == _markId); mark.Delete(); } catch (Exception) { } UpdateDB(); } } 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; }