Внутренний сервис компании: считает рабочее время, автоматически выплачивает деньги на карты VISA и MasterCard.

Содержание



Поставленная задача

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

На нашем сайте интегрировать платёжную систему. Ссылка ниже .
https://payu-api.ru/pages/viewpage.action?pageId=1376264
Исполнитель должен чётко понимать что от него нужно !

Как видно из цитаты выше, понимания того, что надо делать очень абстрактно, ну чтож, меня же не пугают трудности 😀. Мы созвонились с заказчиком, и после 15 минутного разговора стало понятно, что нужно веб-приложение, в котором должны быть следующие пункты:

  • 1. Личный кабинет для сотрудников, в котором они могут регистрироваться, привязывать свои банковские карты, фиксировать свои рабочие часы и подавать заявки на выплату ЗП.
  • 2. Личный кабинет для администраторов портала, в котором они могут модерировать текущих пользователей, а также создавать новых. Видеть заявки на выплаты, одобрять или отклонять их.
  • 3. Административный персонал должен быть поделен на группы с разными правами доступа к порталу.
  • 4. Модуль автовыплат который должен уметь делать автоматические выплаты, как единичные, так и массовые.
  • 5. Возможность работать одновременно с двумя юридическими лицами.
  • 6. Простая антифрод система, которая поможет избежать дубли операций (ошибки модераторов, сотрудники два раза запросили выплату).

Что было сделано

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

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

Итак:

  • Был предложен следующий UX и сверстаны страницы с использованием уже готового шаблона
  • Спроектирована База данных

  • Написан код самого приложения

  • Проведена интеграция с PauY (добавление и удаление банковских карт, совершение самих выплат)

  • Поднят и настроен сервер

  • Тестирование сервиса

Достигнутый результат

Web-приложение нужно было аутстаффинг компании. Оно позволило оптимизировать работу менеджеров по персоналу с сотрудниками и автоматизировать выплаты этим сотруднкам заработной платы.

Используемые технологии

В процессе разработки использовались следущие сервисы и технологии:

  • Шаблон административной панели Metronic
  • Онлайн сервис для проектирования Баз Данных DB DESIGNER
  • PHP фреймворк Laravel версии 5.6
  • Реляционная база данных MySQL
  • JS библиотека jQuery

Выводы

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

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

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