Мастер-Тур:Дополнительный модуль Отложенный расчет

Материал из Megatec
Перейти к: навигация, поиск

Версия статьи от 18-09-2013. Статья находится на стадии разработки.

Введение

Обзор

Дополнительный модуль Отложенный расчет позволяет произвести расчет тура в определенное, заранее заданное время.

Установка модуля

В ПК «Мастер-Тур» версии 2009.2 релиза 18 и выше модуль устанавливается путем обновления клиентской части: в рабочий каталог приложения копируется файл Megatec.MasterTour.Plugins.RecalculateByTimePlugin.dll.

Настройки

Настройка SYSCalcPriceCountMax

В базе данных ПК "Мастер-Тур" существует настройка SYSCalcPriceCountMax (в таблице SystemSettings), позволяющая влиять на количество одновременно рассчитываемых прайс-листов.

В зависимости от значения этой настройки одновременно рассчитываться может один, два, три и более туров.

Задание RecalculateByTime

Прогнать по базе данных скрипт Job_RecalculateByTime.sql – создает необходимое задание для запуска отложенных туров на расчет.

  • RecalculateByTime – запускает RecalculateByTime. Запускается ночью (с 22:00 до 08:00) каждые 5 минут. Производит расчет запланированных туров.

Параметры в задании представлены в виде примера. Реальные параметры в задании необходимо настраивать в соответствии с индивидуальной работой системы.

Работа с модулем

Доступ к функциям данному модулю осуществляется из экрана Конструктор туров: Надстройки → Расчет прайс-листа/Прайс-листы.
Экран «Прайс-листы»

Общее описание процесса расчета туров

Тур создается в Конструкторе туров стандартным способом: проставляются даты туров, наценка, создаются доплаты (подробнее – Конструктор туров). Далее менеджер переходит в расчет прайс-листа и стандартно создает дерево услуг, т.е.:

  1. Выбирает продолжительности, на которые должен рассчитаться тур
  2. Выбирает, какие услуги должны рассчитаться в туре, какие должны добавляться в корзине
  3. Выбирает список отелей, на которые должны рассчитаться цены

При нажатии на кнопку Расчет появляется диалоговое окно.

В случае, если тур рассчитывается первый раз
Ds060.png
В случае, если тур рассчитывается не первый раз
Ds061.png

  • При выборе варианта Выполнить сейчас расчет будет произведен незамедлительно
  • При выборе варианта Запланировать происходит построение дерева услуг. Расчет будет запущен в запланированное время

Параметры запуска расчета отложенных туров

  1. Время запуска расчета отложенных туров регулируется заданием (job RecalculateByTime) и устанавливается пользователем
  2. Количество одновременно рассчитываемых и выставляемых в онлайн туров определяется значением настройки SYSCalcPriceCountMax в таблице SystemSettings

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

По каждому отложенному туру всегда есть статус его расчета.

Отслеживание статусов отложенных для расчета туров

Для того, чтобы пользователь мог посмотреть в каком состоянии находятся туры, расчет которых был отложен, был изменен экран отображения рассчитанных прайс-листов. В списке отображения остается возможность выставления тура в интернет, а также отображения всей необходимой информации по туру. В данной вкладке отображается только рассчитанные туры, для которых есть возможность выставления их в онлайн. В данном экране все колонки, кроме "on-line", "СПО" и "Лидер продаж", являются информационными, в колонке "on-line" пользователь проставляет признак выставления или снятия тура и нажимает кнопку Сохранить, тем самым осуществляя снятие или выставление тура в интернет. Возможно одновременное снятие/выставление нескольких туров.
Ds073.png

Колонки вкладки "Список прайс-листов":

  • Онлайн - показывает выставлен ли тур в Интернет. Снятие/простановка признака описана выше
  • Название тура
  • Заезд с - первая из возможных дат заезда по туру
  • Заезд по - последняя из возможных дат заезда по туру
  • Валюта - валюта тура
  • Цена за
  • Страна - страна тура
  • Статус - статус расчета прайс-листа
  • Действителен с - с какой даты действителен тур
  • Действителен по - по какую дату действителен тур
  • Время расчета - дата и время начала последнего расчета прайс-листа
  • Время последнего обновления - дата и время продолжения/окончания расчета прайс-листа
  • СПО - является ли тур СПО. Изменяемый признак, который может проставить пользователь
  • Лидер продаж - является ли тур "Лидером продаж". Изменяемый признак, который может проставить пользователь

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

В данном экране отображаются все туры, которые стоят в очереди на расчет и туры, по которым уже начат расчет. Основная панель:

  • Выход – выйти из экрана
  • Обновить – обновить страницу и данные на ней
  • Удалить – выделить строку и удалить ее. Функция необходима для того, чтобы удалить дерево услуг до расчета, в том случае, если оно создано неверно или произошли какие-либо изменения.

Удалить дерево расчета можно только в том случае, если расчет прайс-листа еще не начат. То есть тур можно удалить только из вкладки "Очередь расчета" и только со статусом Ожидание. Если же пользователь строит новое дерево услуг по туру, который уже стоит в списке со статусом ожидание и выбирает для него отложенный расчет – то тур попадает в очередь снова с новым деревом, а предыдущее дерево перезаписывается. Если же тур не в ожидании, а уже рассчитывается, то выводится предупреждение: Ds093.png

Предупреждение


ВАЖНО: если пользователь сохранил дерево услуг – поставил прайс-лист в очередь на расчет, но ситуация изменилась и рассчитать его нужно сейчас, 
то необходимо зайти в экран построения дерева прайс-листа, задать еще раз нужные параметры и выбирать вариант Рассчитать сейчас.  
Из списка сохраненных на ночь расчетов  данный тур удаляется. Ночью не запускается на расчет и 
для этого не нужно удалять его из списка вручную, обновление списка произойдет автоматически.

Для удобства поиска интересующих туров представлено 5 фильтров:

  1. По городу вылета
  2. По стране
  3. По типу тура
  4. Поиск по названию прайс-листа или по совпадению части названия
  5. По приоритету

В таблице указываются следующие данные:

  • Название прайс-листа
  • Дата и время постановки в очередь – дата и время когда тур был поставлен в очередь на отложенный расчет
  • Создатель – Имя пользователя, который поставил тур на отложенный расчет
  • Приоритет – всего может быть 3 приоритета на расчет:
    • Высокий
    • Cредний
    • Низкий
  • Статус

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

Предупреждение


Для изменения приоритета у пользователя должны быть права на его смену, 
то есть стоять активным action «Разрешить менять приоритет расчета»


Приоритеты обрабатываются следующим образом: сначала в расчет идут все туры с приоритетом «высокий», после того, как расчет таких туров окончен, рассчитываются туры с приоритетом «средний», после этого рассчитываются туры с приоритетом «низкий».
Ds064.png

Статус – всего существует два статуса тура:

  • Ожидание – в том случае, если тур в расчет еще не попал и стоит в очереди на расчет
  • Расчет – тур уже попал в расчет и в скобках рядом со статусом проставляется дата и время, когда тур начал рассчитываться. Пример: Рассчитывается (07.11.2012 15.30)

Тип – всего существует 2 типа расчета: запись и дозапись. Тип определяется в соответствии с тем, что выбрал менеджер при сохранении тура на отложенный расчет.

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

Ошибка при расчете тура

В том случае, если при расчете тура произошла какая-либо ошибка или тур рассчитывался более 10 часов, то во вкладке "Прайс-листы" такой тур будет отображаться серой строкой со статусом "Ошибка расчета". При нажатии на этот статус будет вызвано диалоговое окно с описанием дальнейших действий:
Диалоговое окно с ошибкой расчета

  • Удалить – тур будет удален
  • Расчет – при нажатии будет открыто новое диалоговое окно с возможностью заново рассчитать тур, либо запланировать его на расчет
  • Отмена – возврат в предыдущий экран