Разработка сайта с вакансиями для my7days

Главная страница

Разработка сайта с вакансиями для my7days

Задача

Разработать ресурс с индивидуальным дизайном и автоматическим обновлением вакансий с портала hh.ru.

Требования к ресурсу:

  • Располагаться должен на поддомене
  • Иметь фильтрацию ваканский по полям - Требуемый опыт работы, Регион размещения вакансии, Рабочие области
  • Выводить данные по дате размещения ваканскии, позиция, оплата труда, город, метро, тип занятости,требуемый опыт
  • У каждой ваканскии добавить систему оставления отзыва. Данные по отзывам отображать на странице со списком и в самой вакансии
  • Добавить форму отклика на вакансию
  • Связать отклики с Битрикс24, и направлять письма на почты hr

Цветовая палитра

#f77eb4
#b4b4b4
#f7f7f7
#333333

Макеты сайта

Главная
Вакансия

Выгрузка из hh.ru

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

В результате решения задачи был разработан модуль для Битрикса по интеграции вакансий по определенной компании. Модуль использует hh.ru API, разработанный интерфейс настройки модуля сделан на Vue.js + Element UI.

Алгоритм работы модуля

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

Я бы выделил в этом проекте интересный опыт работы с urlrewrite, поскольку в проекте ваканскии выводятся на главной странице, могут иметь фильтрацию и пагинацию. И по шаблону, блок с вакансиями как бы встраивается в лендинг. На первый взгляд задача простая, ajax фильтрация, пагинация у встраиваемого блока. Использование комплексного компонента bitrix:news, с кастомизацией стартовой страницы. Но вот по работе с сылками возникла проблема. Поскольку компонент bitrix:news используется сразу на главной, настраивать нужно 404 ошибку так, чтобы при переходе была показана ошибка 404, а не элемент не найден. 

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

 

Комментирование

Для проекта нужно было реализовать оставление отзыва или комментария пользователем. Помимо имени и комментария, важно было указывать рейтинг вакансии. Ко всему прочему, для оставленного комментария нужно сделать систему голосования (за, против). Для этого было разработано свое решение в виде модуля комментирования.

Данные хранятся в highload-блоках, их всего три - Группы, Элементы, Голоса. К каждой сущности написаны вспомогательны ORM-классы для взаимодействия в событиях. При удалении элементов нужно поддерживать удаление голосов, также при удалении групп элементов, нужно очищать все элементы и голоса. Логика при удалении записей повешана на события удаления из highload-блоков. Таким образом поддерживается целостность данных.

Форма отклика

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

Для удобства, рядом с формой отклика выведена карта с координатами места трудоустройства из сервиса hh.ru. Есть возможность прикрепить файл с резюме.

Поскольку штатная синхронизация веб-форм не умеет прокидывать файлы в Битрикс24. То было написано решение, которое бы связывалось с порталом и заводило бы лид, отправляя в свою воронку. В отправляемом запросе на портал находятся все данные, которые заполнил пользователь.

Настроены почтовые события на отправку данных в почты hr. Настроена ссылка на резюме, которая отправляется в письме.

 

Данные по проекту

Статус
Сдан
CMS
Битрикс
Год
2021
Длительность
1 месяц, 20 дней
Разработка сайта с вакансиями для my7days
Разработка сайта с вакансиями для my7days
Благодарю за просмотр!