Коллеги, добрый день.
Зачастую, в нашей работе, мы часто сталкиваемся с необходимостью интеграции нашего ЗУПа с внутренним HR-порталом. У ЗУПа уже есть некоторые заготовки, но как всегда, на каждом предприятии приходится писать свои способы. В данной публикации я прилагаю расширение, в котором продемонстрированы наглядные примеры такой интеграции через get и post http-сервисы. Итак,поехали:
Get - сервисы:
1. PositionsAndDivisionsAndOrganizations (адрес примера - ИмяВашегоСервераПубликации/BT_ZUP_Demo/hs/GetServises/PositionsAndDivisionsAndOrganizations) - простой сервис получения списка всех подразделений, должностей и организаций из ЗУПа. В ответе массивы с их наименованиями и гуидами.
2. WorkingEmployeses (адрес примера - ИмяВашегоСервераПубликации/BT_ZUP_Demo/hs/GetServises/WorkingEmployeses) - сервис получения всех работающих сотрудников в базе по всем организациям, с должностями,подразделениями, датами приема и с гуидами ссылочных типов. Сервис работает через получения данных с помощью механизмов программного интерфейса, что в ЗУПе очень важно.
3. RestOfVacationDays (адрес примера - ИмяВашегоСервераПубликации/BT_ZUP_Demo/hs/GetServises/RestOfVacationDays/8695b46a-7cbe-11e2-9368-001b11b25590) - get-сервис получения остатков отпусков сотрудника на текущую дату.В качестве параметра используется входящий гуид самого сотрудника. В ответе приходит разбивка по каждому виду отпуска с гуидом вида. Механизм также использует программный итнерфейс.
4. SettlementSheet (адрес примера - ИмяВашегоСервераПубликации/BT_ZUP_Demo/hs/GetServises/SettlementSheet/8695b46a-7cbe-11e2-9368-001b11b25590/01.02.2010/28.02.2020) - сервис для скачивания расчетного листка сотрудника за определенный период. На вход в качестве параметра передается гуид сотрудника и даты, за которые формируется листок. В ответ приходит pdf - файл.
Пример Post-сервиса:
CreateVacationSchedule ( адрес примера -
ИмяВашегоСервераПубликации/BT_ZUP_Demo/hs/PostServices/CreateVacationSchedule) - создание графика отпусков. На основе входящих параметров создаются документы "График отпусков". В них заполняется организация, список сотрудников с видами отпусков и датами отпуска. Входящий Post-запрос:
{
"users":[
{
"id":"8695b46a-7cbe-11e2-9368-001b11b25590" , //Гуид сотрудника
"vacation":[
{
"startDate": "27.01.2020",
"endDate": "28.01.2020",
"id": "bdd723d2-a9fe-4a8b-8c37-d8fe02245ea1" //гуид вида отпуска
}
]
}
]
}
В прилагаемом расширении нет дополнительных проверок, это уже на вашей стороне, это просто пример,который может пригодится, в случае отсутствия опыта таких разработок. Также, все эти сервисы можно перенести на механизм динамических публикаций. Описание такого решения в статье //infostart.ru/public/1123482.
Расширение разрабатывалось на основе конфигурации "Зарплата и управление персоналом, редакция 3.1 (3.1.10.309)".