/
"Выходные дни в командировке" (ModWeekend)

"Выходные дни в командировке" (ModWeekend)

МОД позволяет:

  • зафиксировать выходные дни, включенные в период командировки (определяются в соответствии с настроенным Производственным календарем) в разрезе каждого пассажира на отдельной странице и сохранить информацию в командировке;

  • получить информацию о выходных, включенных в период командировки в методе https://corteos-platform.atlassian.net/wiki/x/ubgM;

  • настроить выбор определенных значений из справочника со специальным поведением для каждого выходного дня (например, можно настроить указание причины включения выходного дня или формы оплаты за работу в выходной день);

  • настроить кастомизированные дисклеймеры - общий на странице выходных дней и/или при выборе определённого значения из справочника со спец поведением;

  • настроить чекбоксы при выборе определённого значения из справочника со спец поведением (фиксируется в логе) и включить значение чекбокса как тег в https://corteos-platform.atlassian.net/wiki/x/XB8M;

  • определить тип выходного дня в командировке (выходной/праздничный, определяются в соответствии с настроенным Производственным календарем);

  • не фиксировать выходные дни в командировке, если они были выбраны как личные (в случае совместной работы с https://corteos-platform.atlassian.net/wiki/x/4lwM.

Внимание! Данный МОД работает ТОЛЬКО совместно с МОДом Первичный контейнер командировки.

image-20241225-132330.png

Кому будет полезен этот МОД

Это клиентский мод. Он доступен для подключения и использования только клиентам.

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

Подключение МОДа

Для подключения МОДа следует перейти в раздел “Расширения” и выбрать раздел “Marketplace” найти МОД "Выходные дни в командировке" и активировать его.

После подключения МОДа:

  • в справочниках бюджетных кодов появится новое специальное поведение “Используется для выходных дней в командировке

  • в разделе “Расширения” появится новый раздел “Выходные дни: настройки”.

Настройка и работа с МОДом

Базовая работа МОДа

Базово МОД позволяет фиксировать выходные дни в командировке без каких либо дополнительных настроек:

  1. Перед созданием контейнера на отдельной странице МОД автоматически определяет, есть ли в выбранном периоде командировки выходные дни в соответствии с Производственным календарем клиента, и отображает их список (только выходных) в разрезе каждого командируемого:

image-20241225-143135.png
  1. Отображенные данные фиксируются в деталях созданной командировки в разделе “Выходные”:

  1. При использовании метода выгрузки GetReservationDetailsV2 в ответе в AugmentationData будут отображены данные о выходных днях в командировке:

<Requested id_Reserve="0" id_ComplexReserve="809226"/> <WeekendsForComplexReserve> <WeekendsForPerson id_Person="945816"> <Weekend Date="2025-02-01T00:00:00"> <Type>dayoff</Type> <Codes/> </Weekend> <Weekend Date="2025-02-02T00:00:00"> <Type>dayoff</Type> <Codes/> </Weekend> </WeekendsForPerson> <WeekendsForPerson id_Person="954700"> <Weekend Date="2025-02-01T00:00:00"> <Type>dayoff</Type> <Codes/> </Weekend> <Weekend Date="2025-02-02T00:00:00"> <Type>dayoff</Type> <Codes/> </Weekend> </WeekendsForPerson> </WeekendsForComplexReserve>

Специальное поведение справочников кодов

МОД "Выходные дни в командировке" добавляет 2 специальных поведения, доступных в бюджетных справочниках:

  1. Используется для выходных дней в командировке. Справочник с данным специальным поведением нужно создать самостоятельно (если требуется).

Указать данное специальное поведение можно только в одном справочнике.

  1. Наличие выходных дней в командировке. Справочник с данным специальным поведением создается автоматически при включении МОДа.

Специальное поведение «Используется для выходных дней в командировке»

Доступно для выбора в бюджетном справочнике при включении данного МОДа.

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

Пример работы:

  1. Создан справочник “Компенсация за работу в выходной” со специальным поведением “Используется для выходных дней в командировке”, содержащий в себе 2 значения:

  1. После создания контейнера командировки и определения выходных в нем, система на странице с выходными днями потребует обязательно внести для каждого выходного дня значения из справочниковКомпенсация за работу в выходной, так как в него добавлено спец поведение “Используется для выходных дней в командировке”.

  1. После выбора и сохранения значений выбранные данные фиксируются в деталях созданной командировки в разделе “Выходные”:

  1. При использовании метода выгрузки GetReservationDetailsV2 в ответе в AugmentationData также будет отображена информация о выбранных значениях справочника для каждого дня:

<Requested id_Reserve="0" id_ComplexReserve="809802"/> <WeekendsForComplexReserve> <WeekendsForPerson id_Person="945816"> <Weekend Date="2025-02-22T00:00:00"> <Type>dayoff</Type> <Codes> <CustomerCode> <id_MetaCode>392284</id_MetaCode> <Code>1</Code> <Name>дополнительный день отдыха</Name> <DictionaryName>Компенсация за работу в выходной</DictionaryName> </CustomerCode> </Codes> </Weekend> <Weekend Date="2025-02-23T00:00:00"> <Type>dayoff</Type> <Codes> <CustomerCode> <id_MetaCode>392285</id_MetaCode> <Code>2</Code> <Name>оплата в двойном размере</Name> <DictionaryName>Компенсация за работу в выходной</DictionaryName> </CustomerCode> </Codes> </Weekend> </WeekendsForPerson> </WeekendsForComplexReserve>

Специальное поведение «Наличие выходных дней в командировке»

При включении МОДа "Выходные дни в командировке" автоматически создается бюджетный справочник «Наличие выходных дней в командировке», который содержит специальное поведение «Наличие выходных дней в командировке» со значениями “Да” или “Нет”.

Что делает специальное поведение: в командировке для каждого командируемого будет фиксироваться признак наличия или отсутствия в командировке выходных или праздничных дней.

Пример работы:

  1. Создан первичный контейнер командировки с периодом 28.04.2025-30.04.2025, в который добавлено два сотрудника из разных организаций, в которых по-разному настроен Производственный календарь.

В соответствии с Производственным календарем клиента система определила, что день 30.04.2025 второй организации является праздничным, а для первой организации в заданном периоде командировке выходных или праздничных дней нет, исходя из чего проставила соответствующие коды после создания командировки ее участникам:

Админка МОДа:

Админка МОДа доступна из раздела «Расширения» с названием «Выходные дни: настройки».

Настройки, которые доступны в админке МОДа:

Общие настройки

Общие правила, по которым работает МОД выходных дней в командировке

  • Не отображать выходные дни, выбранные как личные

Работает только совместно с МОДом "Расчет суточных для командировки". Если включен, то при указании на странице суточных для определенного дня признак «личный», который является и выходным днем тоже, мы не отображаем такой день на списке выходных.

  • Отображать тип выходного дня

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

  • Общий дисклеймер на странице выходных дней

Текстовое поле HTML, указанный текст будет отображен между названием страницы и выходными днями.

  • Общий дисклеймер на странице выходных дней на английском языке

Текстовое поле HTML на английском, указанный текст будет отображен между названием страницы и выходными днями.

Пример общих настроек МОДа:

Список дисклеймеров

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

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

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

Пример настроенного дисклеймера:

Список чекбоксов

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

В данном разделе задается список чекбоксов, которые будут отображены пользователям при выборе того или иного кода из справочника со специальным поведением МОДа.  

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

Для фиксации текста чекбокса в командировочном документе создан тег для командировочных документов с названием ModWeekendChekbox.

Без нажатия чекбокса у пользователя не будет возможности перейти на следующий шаг.

Нажатие чекбокса с его текстом фиксируется в командировке в разделе “Выходные”, а также в лог портале.

Пример настроенных чекбоксов:

Пример сложной работы МОДа с заданными настройками:

Создан первичный контейнер командировки с датами 29.04.2025–02.05.2025. 

В контейнер добавлено два сотрудника из разных организаций, в которых по-разному настроен Производственный календарь.

На странице расчета суточных для сотрудника Львов Олег день 02.05.2025 выбран, как личный.

В соответствии с Производственным календарем клиента система определила, что:

  • Для первой организации 01.05.2025 является днем с типом «праздничный»

  • Для второй организации 30.04.2025 и 01.05.2025 являются днями с типом «праздничный», 02.05.2025 является днём с типом «выходной».

На отдельной странице Система отобразила страницу выходных дней командировки следующим образом:

  • Дату 02.05.2025 для Сотрудника Львов Олег система не включила в список выходных дней, так как в настройках включено «Не отображать выходные дни, выбранные как личные»

  •  Система отобразила текст, внесенный в настройке МОДа «Общий дисклеймер на странице выходных дней»

  • Система отобразила тип выходного дня по каждой организации, так как включена настройка «Отображать тип выходного дня».

  • Система требует внести для каждого выходного дня значения из справочников «Компенсация за работу в выходной», так как в него добавлено спец поведение «Используется для выходных дней в командировке».

Как только будут выбраны значения из справочника «Компенсация за работу в выходной», система отобразит чекбоксы и дисклеймеры, которые заведены в настройках для соответствующих вариантов и объединит их в одно поле (если применимо):

Как только будут выбраны все значения и нажаты чекбоксы, можно будет перейти в детали созданной командировки. Выбранные значения сохранятся в командировке в разделе “Выходные”:

При выгрузке командировки методом GetReservationDetailsV2 появится новый блок:

<Requested id_Reserve="0" id_ComplexReserve="809821"/> <WeekendsForComplexReserve> <WeekendsForPerson id_Person="945816"> <Weekend Date="2025-05-01T00:00:00"> <Type>holiday</Type> <Codes> <CustomerCode> <id_MetaCode>392284</id_MetaCode> <Code>1</Code> <Name>дополнительный день отдыха</Name> <DictionaryName>Компенсация за работу в выходной</DictionaryName> </CustomerCode> </Codes> </Weekend> </WeekendsForPerson> <WeekendsForPerson id_Person="955317"> <Weekend Date="2025-04-30T00:00:00"> <Type>holiday</Type> <Codes> <CustomerCode> <id_MetaCode>392285</id_MetaCode> <Code>2</Code> <Name>оплата в двойном размере</Name> <DictionaryName>Компенсация за работу в выходной</DictionaryName> </CustomerCode> </Codes> </Weekend> <Weekend Date="2025-05-01T00:00:00"> <Type>holiday</Type> <Codes> <CustomerCode> <id_MetaCode>392285</id_MetaCode> <Code>2</Code> <Name>оплата в двойном размере</Name> <DictionaryName>Компенсация за работу в выходной</DictionaryName> </CustomerCode> </Codes> </Weekend> <Weekend Date="2025-05-02T00:00:00"> <Type>dayoff</Type> <Codes> <CustomerCode> <id_MetaCode>392284</id_MetaCode> <Code>1</Code> <Name>дополнительный день отдыха</Name> <DictionaryName>Компенсация за работу в выходной</DictionaryName> </CustomerCode> </Codes> </Weekend> </WeekendsForPerson> </WeekendsForComplexReserve>

В командировочный документ занесен тег ModWeekendChekbox, в соответствии с этим в нём отображаются ранее нажатые чекбоксы в в разрезе командируемого:

Структура AugmentationData в ответе метода GetReservationDetailsV2 при включении МОДа выходных

  • WeekendsForComplexReserve – контейнер выходных дней в командировке

    • WeekendsForPerson – контейнер выходных дней персоны

    • id_Person - идентификатор персоны, у которой выбран выходной день

      • Weekend – контейнер выходного дня

        • Date – дата выходного дня

        • Type – тип выходного дня (если включено определение в настройках); dayoff – выходной, holiday – праздничный;

        • Codes – контейнер кодов и справочников выходного дня

          • CustomerCode – информациях о коде справочника выходного дня (если справочник заведен):

            • id_MetaCode - идентификатор кода из справочника

            • Code – значение кода из справочника

            • Name – название кода из справочника

            • DictionaryName – название справочника

 

 

Related content

Редактор календарей (Производственный календарь)
Редактор календарей (Производственный календарь)
Read with this
"Подсказки для бронирующих в деталях командировки" (ModComplexTips)
"Подсказки для бронирующих в деталях командировки" (ModComplexTips)
More like this
Работа с Производственным календарем
Работа с Производственным календарем
Read with this
"Разрешить выдачу отелей для определенных поставщиков в определенных городах" (ModHotelAllowedProviders)
"Разрешить выдачу отелей для определенных поставщиков в определенных городах" (ModHotelAllowedProviders)
More like this
"Расчет суточных для командировки (бывш. btrip)" (ModBtripAdvanceReports)
"Расчет суточных для командировки (бывш. btrip)" (ModBtripAdvanceReports)
Read with this
"Пассажиры из компаний-плательщиков" (ModPassengersOnlyFromPayerCompany)
"Пассажиры из компаний-плательщиков" (ModPassengersOnlyFromPayerCompany)
More like this