Предпосылки
Делать было нечего ... и накопился определенный багаж знаний по web разработке, не закрепленный практикой.
Описание
Разработка позволяет интегрировать 1С: ЗУП с внешним сайтом.
На самом сайте сотрудник компании может просматривать свои данные и инициировать некоторые бизнес-процесс в 1С:ЗУП(последнее в планах).
На текущий момент реализовано:
- На стороне 1С
 
- Заведение пользователей на сайте.
 - Синхронизация организаций, подразделений, должностей, кадровых и расчетных данных сотрудников.
 - Просмотр и редактирование заявок пользователей.
 
- На стороне сайта
 
- Вход
 - Просмотр личных данных
 - Просмотр расчетных листков
 - Просмотр графика работы
 - Просмотр табелей учета рабочего времени
 - Просмотр/редактирование заявок
 
Тестировалось на
- ЗУП ПРОФ
 
- 3.1.13.188
 - 3.1.13.220
 - 3.1.18.119, NodeJS 14.17.6, PG 13.4
 
- ЗУП КОРП
 
- 3.1.13.188
 - 3.1.13.220
 
Пример
Пользователь, пароль любые.
Установка
- Проект опубликован на GitHab. Пример можно посмотреть на странице(email и пароль любые).
 - Установить Postgres
	
- Создать базу "ZUP_EmployeeOffice" и пользователя zup_admin (настройки подключения храняься в папке "/config")
 - Прогнать скрипт по созданию объектов базы данных (файл "pg_base.sql")
 
 - Установить Node.js и запустить терминал
	
- Выполнить команду npm install -g concurrently(в любой рабочей папке)
 - В папке "ZUP_EmployeeOffice" выполнить команду "npm install"
 - В папке "ZUP_EmployeeOffice\client" выполнить команду "npm install"
 - В папке "ZUP_EmployeeOffice" выполнить команду "npm run dev"
 
 - Перейти на страницу регистрации 
	

- Ввести данные регистрации
 - После нажатия на кнопку регистрация в правам верхнем углу появиться id пользователя - запомните его.
 
 - В 1С установить расширение(исходники в папке "1c\zup_korp") . После запуска станет доступна подсистема "Личный кабинет"
 - Перейти в настройки сервиса и внести необходимые данные("ИД Базы" оставляем по умолчанию). После этого добавляем своему пользователю(например через консоль кода) роль "Администратор (ЛК)" и перезапускаем 1с. При запуске 1с будет произведена инициализации данных для первичного обмена. Выполняем первичный обмен через обработку "Администрирование (ЛК)"
	

 - Перейти в "Администрирование" личного кабинета
	

 - Выполнить экспорт "НСИ".
 - Выбрать пользователя, внести его данные и произвести экспорт необходимых данных.
 - Для автоматического обновления информации на сайте подключить внешнюю обработку, запускаемую по расписанию(исходники в папке "1c\external data processors\ZUP_EmployeeOffice_АвтоОбмен") . Сами данные об изменениях регистрируются в регистрах:
	
- "Очередь обмена с ЛК (ссылочные данные)"
 - "Очередь обмена с ЛК (произвольные данные)"
 
 - Перейти в "Личный кабинет" и ввести данные авторизации пользователя.
	

 - После чего попадаем на страницу с личными данными.
	

 - В блоке "Расчетный листки"(до 0.9.4) по есть возможность просмотреть данные за выбранный период:
	

 - В блоке "Расчетный листки"(с 0.9.4) по есть возможность просмотреть данные за выбранный период:

 - В блоке "Заявки на справки" можно:
	
- Просматривать список своих заявок:
		

 - Создавать, редактировать, просматривать
		

 
 - Просматривать список своих заявок:
		
 - На стороне 1с, в блоке "Заявки на справки" можно:
	
- Просматривать список:
		

 - Редактировать, просматривать
		

 
 - Просматривать список:
		
 - В блоке "График работы" можно просмотреть свой график работы(переходящая смена относится ко дню ее начала):
	

 - В блоке "Табель" можно просмотреть свой табель учета рабочего времени:
	

 
ОБНОВЛЕНИЯ:
0.6.0 - 28.05.2020
- WEB интерфейс переведен на vuetifyjs
 - Добавлено логирование на стороне 1С
 - Небольшие оптимизации
 
0.7.0 - 31.05.2020
- Добавлена возможность формировать на сайте заявки на оформление справок. Имеется двухсторонний обмен с 1С.
 
0.7.5 - 05.06.2020
- Добавлена возможность просматривать график работы
 
0.8.0 - 08.06.2020
- Добавлена возможность просмотра табелей учета рабочего времени
 
0.8.5 - 11.06.2020
- Минорные оптимизации кода и верстки страниц
 - Добавлены permissions по ролям пользователей
 
0.8.6 - 12.09.2021
- Выполнен переход на PG 13 и NodeJS 14.
 - Исправлены ошибки. На текущий момент при наличии у сотрудника внутреннего совместительства или подработок фронт может показывать не верные данные.
 
0.9.0 - 27.09.2021
- Доработан вывод данных для совместителей.
 - Изменена цветовая схема.
 
БЛАГОДАРНОСТИ:
- Александр Переверзев
 - Владилен Минин
 - ... возможно кого-нибудь забыл. Пишите.
 
P.S:
Адекватная критика и предложения принимаются с благодарностью.
Вступайте в нашу телеграмм-группу Инфостарт