//Клик мышью по кнопке "Удалить запись" private void DelEntryBtn_Click(object sender, RoutedEventArgs e) { if (DbDataGrid.SelectedIndex == -1) { return; } try { var result = MessageBox.Show("Вы уверены что хотите удалить запись? Действие необратимо.", "Удаление", MessageBoxButton.OKCancel); if (result == MessageBoxResult.OK) { _query = "DELETE FROM " + Settings.Default.dbTableName + " WHERE id = '" + EditIdTxtBox.Text + "';"; DbQueries.Execute(_query); DbQueries.UpdateDataGrid(); //Удалим из списка предложенных названий, если такого имени не осталось в БД //Удалили последнюю запись if (_filesList.Any(file => file.PublicationName == EditPublName.Text)) { return; } AddPublNameCmbBox.Items.Remove(EditPublName.Text); AddPublNameCmbBox.Text = null; AddPublNameCmbBox.SelectedIndex = -1; } } catch (Exception ex) { MessageBox.Show(ex.Message, "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); } }
//Клик мышью по кнопке "Добавить запись" private void AddEntryBtn_Click(object sender, RoutedEventArgs e) { //Проверим заполнили ли поля "Название, Дата выхода, Номер издания" if (!string.IsNullOrEmpty(AddPublNameCmbBox.Text) && !string.IsNullOrEmpty(AddDatePicker.Text) && !string.IsNullOrEmpty(AddIssueNmbTxtBox.Text)) { //Сформируем и отправим соответствующий SQL-запрос в БД _query = "INSERT INTO " + Settings.Default.dbTableName + " (publication, is_magazine, date, issue_number, file_path) VALUES('" + AddPublNameCmbBox.Text.Replace(@"'", @"\'") + "', '" + Convert.ToByte(AddRadioBtnMagaz.IsChecked) + "', '" + Convert.ToDateTime(AddDatePicker.Value).ToString("yyyy-MM-dd") + "', '" + AddIssueNmbTxtBox.Text + "', '" + AddFilePathTxtBox.Text.Replace(@"\", @"\\").Replace("'", "''") + "');"; DbQueries.Execute(_query); DbQueries.UpdateDataGrid(); } else { MessageBox.Show("Поля не могут быть пустыми", "Заполните поля", MessageBoxButton.OK, MessageBoxImage.Error); } }
public static void Init() { //Если не заданы настройки подключения if (string.IsNullOrEmpty(Settings.Default.dbUsername) || string.IsNullOrEmpty(Settings.Default.dbPassword)) { return; } //Если включен режим администратора if (Settings.Default.isAdmin) { //Отобразим вкладку редактора MWin.EditBtn.IsChecked = true; Grid.SetColumn(MWin.MagazinesBtn, 0); Grid.SetColumnSpan(MWin.MagazinesBtn, 2); Grid.SetColumn(MWin.NewspapersBtn, 2); Grid.SetColumnSpan(MWin.NewspapersBtn, 2); //Создаем БД и таблицу в ней, если они еще не были созданы Task.Factory.StartNew(() => { try { //Отправляем запрос на создание БД и таблицы в ней DbQueries.DataBaseCreate(); //Отправляем запрос на обновление таблицы в фоновом процессе. DbQueries.UpdateDataGrid(); } catch (Exception ex) { //Unable to connect to any of the specified MySQL hosts. MessageBox.Show( ex.Message == "Unable to connect to any of the specified MySQL hosts." ? "Нет соединения с сервером MySQL" : ex.Message, "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); } } ); } //Иначе спрячем вкладку редактора else { MWin.MagazinesBtn.IsChecked = true; Grid.SetColumn(MWin.MagazinesBtn, 0); Grid.SetColumnSpan(MWin.MagazinesBtn, 3); Grid.SetColumn(MWin.NewspapersBtn, 3); Grid.SetColumnSpan(MWin.NewspapersBtn, 3); //Обновим массив со списком pdf файлов UpdateFilesDescriptions(); } }
public static void UpdateFilesDescriptions() { //Выбираем из БД путь ко всем имеющимся pdf файлам try { //Записываем список всех файлов в массив MWin.FilesList = DbQueries.ExecuteAndReadFilesDescription("SELECT * FROM " + Settings.Default.dbTableName + ";"); } catch (Exception ex) { //Unable to connect to any of the specified MySQL hosts. MessageBox.Show( ex.Message == "Unable to connect to any of the specified MySQL hosts." ? "Нет соединения с сервером MySQL" : ex.Message, "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); } }
//Клик мышью по кнопке "Редактировать запись" private void EditEntryBtn_Click(object sender, RoutedEventArgs e) { if (DbDataGrid.SelectedIndex >= 0) { var result = MessageBox.Show("Вы уверены что хотите изменить запись? Действие необратимо.", "Изменение", MessageBoxButton.OKCancel); if (result == MessageBoxResult.OK) { _query = "UPDATE " + Settings.Default.dbTableName + " SET publication='" + EditPublName.Text.Replace("'", "''") + "',is_magazine='" + Convert.ToByte(EditRadioBtnMagaz.IsChecked) + "',date='" + Convert.ToDateTime(EditDatePicker.Value).ToString("yyyy-MM-dd") + "',issue_number='" + EditIssueNmbTxtBox.Text + "',file_path='" + EditFilePathTxtBox.Text.Replace(@"\", @"\\").Replace("'", "''") + "' WHERE id='" + EditIdTxtBox.Text + "';"; DbQueries.Execute(_query); DbQueries.UpdateDataGrid(); } } }