コード例 #1
0
        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) { }
        }
コード例 #2
0
        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("Выберите строку для редактирования", "Ошибка");
            }
        }
コード例 #3
0
        private void DataGridView2_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e)
        {
            try {
                DataGridViewRow row = dataGridView2.Rows[e.RowIndex];
                _modelId = Convert.ToInt32(row.Cells[0].Value);

                Model model = _models.FirstOrDefault(x => x.Id == _modelId);

                this.modelTextBox.Text = model.NameModel;
            } catch (Exception) {
            }
        }
コード例 #4
0
 private void ModelCheckBox_CheckedChanged(object sender, EventArgs e)
 {
     if (modelCheckBox.Checked)
     {
         string filterModel = $"NameModel='{ModelComboBox.SelectedItem}'";
         Model  mark        = _models.Select(filterModel).With(x => x.First()) as Model;
         string filterCar   = $"ModelId='{mark.Id}'";
         carBindingSource.Filter = filterCar;
     }
     else
     {
         carBindingSource.Filter = "";
     }
 }
コード例 #5
0
        private void ModelBtnChanged_Click(object sender, EventArgs e)
        {
            try {
                string name = this.modelTextBox.Text.With(x => x.Trim());

                if (string.IsNullOrEmpty(name))
                {
                    MessageBox.Show("Не введено название марки");
                    return;
                }

                Model model = _models.FirstOrDefault(x => x.Id == _modelId);
                model.NameModel = name;

                UpdateDB();
            } catch (Exception) {
            }
        }
コード例 #6
0
        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("Выберите строку для редактирования", "Ошибка");
            }
        }
コード例 #7
0
        private void button3_Click(object sender, EventArgs e)
        {
            if (openFileDialog1.ShowDialog() != DialogResult.OK)
            {
                return;
            }

            string path = openFileDialog1.FileName;

            if (!File.Exists(path))
            {
                MessageBox.Show("Файл не был найден!");
                return;
            }

            Open(path);

            Excel.Workbook workbook = _excelApplication.Workbooks.Open(path);
            _workSheet = workbook.Sheets[1];
            Excel.Range cells = _workSheet.UsedRange;
            int         rowIndex; // count rows

            for (rowIndex = 3; rowIndex <= cells.Count; rowIndex++)
            {
                string value = cells[rowIndex, 2].Text.ToString();

                if (string.IsNullOrEmpty(value?.Trim()))
                {
                    continue;
                }

                Model model = _models.FirstOrDefault(x => x.NameModel == value);

                if (model != null)
                {
                    continue;
                }

                model           = _models.NewModelRow();
                model.NameModel = value;
                model.Id        = Convert.ToInt32(cells[rowIndex, 1].Text);
                _models.AddModelRow(model);
            }
        }
コード例 #8
0
        private void ModelBtnAdded_Click(object sender, EventArgs e)
        {
            try {
                string name = this.modelTextBox.Text.With(x => x.Trim());

                if (string.IsNullOrEmpty(name))
                {
                    MessageBox.Show("Не введено название марки");
                    return;
                }

                Model model = _models.NewModelRow();
                model.NameModel = name;

                _models.AddModelRow(model);

                UpdateDB();
            } catch (Exception) {
            }
        }
コード例 #9
0
        private void ModelBtnDeleted_Click(object sender, EventArgs e)
        {
            if (dataGridView2.SelectedRows.Count != 0)
            {
                string       message  = "Вы действительно хотите удалить запись ? ";
                DialogResult response = MessageBox.Show(message, "Подтверждение", MessageBoxButtons.YesNo);

                if (response == DialogResult.Yes)
                {
                    try {
                        Model model = _models.FirstOrDefault(x => x.Id == _modelId);
                        model.Delete();
                    } catch (Exception) {
                    }

                    UpdateDB();
                }
            }
            else
            {
                MessageBox.Show("Выберите строку для удаления", "Ошибка");
            }
        }
コード例 #10
0
        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;
        }