Exemple #1
0
 //Клик мышью по кнопке "Удалить запись"
 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);
     }
 }
Exemple #2
0
 //Клик мышью по кнопке "Добавить запись"
 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);
     }
 }
Exemple #3
0
        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();
            }
        }
Exemple #4
0
 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);
     }
 }
Exemple #5
0
 //Клик мышью по кнопке "Редактировать запись"
 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();
         }
     }
 }