Руководство пользователя Менеджера Сценариев

5.Эксплуатация.

5.1.Работа с расписаниями.

5.1.10.Удаление расписания.

Удаление расписания доступно в режиме редактирования при помощи кнопки «Удалить» (раздел 5.1.5 «Редактирование расписания», рисунок 10, позиция 7; раздел 5.1.5 «Редактирование расписания», таблица 6, пункт 7).

Восстановить удалённое расписание в данной реализации Менеджера Сценариев невозможно. Перед удалением сервиса появится диалоговое окно (рисунок 31).

Рисунок 31Диалоговое окно удаления расписания.
Диалоговое окно удаления расписания.

При необходимости удаления расписаний в системе требуется соблюсти ряд обязательных условий, обеспечивающих безопасное управление жизненным циклом расписаний и защиту от случайной потери важных данных.

Система блокирует удаление при наличии любых заданий, независимо от их статуса, для сохранения полной истории. Данное ограничение реализовано на уровне бизнес-логики для обеспечения целостности данных.

Рисунок 32Диалоговое окно при запрете удаления расписания.
Диалоговое окно при запрете удаления расписания (исправить ссылки после перенумерации).
  1. Условия для удаления расписания.
    1. Требования к уровню доступа:
    2. Отсутствие связанных заданий:
      • основное условие: расписание не должно иметь сформированных заданий в любом статусе;
      • проверка осуществляется на стороне бэкенда при загрузке данных расписания.
  2. Процесс удаления расписания.
    1. Успешное удаление (когда заданий нет):
      • шаг 1: нажатие кнопки «Удалить»;
      • шаг 2: диалог подтверждения:
        • сообщение: «Удаление расписания! Действительно удалить?»;
        • кнопки:
          • «Удалить»: подтверждение удаления расписания;
          • «Отмена»: отмена операции.
      • шаг 3: выполнение удаления.
    2. Отказ в удалении (когда есть задания):
      • шаг 1: нажатие кнопки «Удалить»;
      • шаг 2: информационное сообщение (рисунок 32):
        • сообщение: «Не может быть удалено. У данного расписания есть сформированные задания.»;
        • единственная кнопка «Отмена».
      • шаг 3: возврат к редактированию:
        • пользователь возвращается к форме редактирования расписания;
        • удаление невозможно до очистки заданий.
  3. Алгоритм проверки возможности удаления.
    1. Фронтенд проверка.

      При нажатии пользователем кнопки «Удалить» в интерфейсе редактирования расписания вызывается метод, который выполняет первоначальную проверку возможности удаления.

      При отсутствии заданий система разрешает продолжить процесс удаления, показывая диалог подтверждения. В противном случае система блокирует удаление, показывая информационное сообщение о невозможности операции.

    2. Бэкенд проверка.

      Параметр подтверждающий закрепление за расписанием заданий, устанавливается сервером при загрузке расписания.

      Сервер проверяет наличие заданий в таблицах базы данных. Учитываются задания во всех статусах: «Новое», «Исполняется», «Выполнено», «Ошибка», «Пауза», «Повтор», «Подготовлено», «Прервано», «Пропущено».

  4. Что делать если удаление невозможно.
    1. Последовательность действий.
      1. Перейти в раздел «Задания» через соответствующую кнопку в интерфейсе.
      2. Найти задания этого расписания: фильтрация по ID расписания.
      3. Удалить все задания (при наличии соответствующих прав).
      4. Вернуться к расписанию и повторить попытку удаления.
    2. Альтернативный вариант: выключение расписания и установка статуса «Выключено» вместо удаления.

      Данная логика обеспечивает безопасное управление жизненным циклом расписаний и защищает от случайной потери важных данных, обеспечивая:

      • целостность данных: защиту от удаления расписаний с историей выполнения;
      • сохранение истории заданий для отчетности;
      • ссылочную целостность: предотвращение «висячих» ссылок в базе данных.