Техническое задание: модуль интеграции Drupal с внешней SQLite базой

Общая задача

Разработать Drupal-модуль factory_bridge, который будет выполнять роль программного моста между системой Drupal и внешней SQLite базой данных. Модуль должен обеспечивать корректное взаимодействие двух систем с соблюдением архитектурных принципов Drupal.

Цель проекта

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

Технические требования

Среда разработки

  • CMS: Drupal 10 или 11
  • Источник данных: внешняя SQLite база данных workshop_bot
  • Дизайн и верстка: не требуются, важен функционал
  • Twig: используется исключительно для отображения готовых данных

Функциональные требования

  • Чтение данных об изделии из SQLite базы
  • Выполнение расчётов на стороне PHP (бизнес-логика)
  • Сохранение агрегированных данных в базу Drupal
  • Вывод таблицы операций изделия на странице или в блоке

Архитектурные требования

  • Использовать Drupal Database API для подключения к SQLite
  • Подключение к внешней БД должно быть централизованным (не в контроллерах)
  • Вся бизнес-логика и расчёты выполняются в PHP
  • Twig используется только для отображения готовых данных

Ограничения и запреты

  • Запрещено использовать new PDO() или sqlite_open() в бизнес-логике
  • Запрещено выполнять SQL-запросы в Twig-шаблонах
  • Запрещено реализовывать бизнес-логику на уровне шаблонов

Работа с данными

Используемые таблицы SQLite

  • order_items
  • assigned_tasks
  • work_sessions

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

Бизнес-логика и расчёты

Для выбранного изделия необходимо рассчитать:

  • НЧ План: значение из поля assigned_tasks.applied_norm_hours
  • Ч Факт: сумма разницы (end_time - start_time) по всем work_sessions операции. Если end_time = NULL, сессия считается активной
  • Дельта: План - Факт

Результат работы

  • Страница или блок с таблицей операций изделия, содержащей: код операции, НЧ План, Ч Факт, Дельта
  • Сохранение агрегированных данных в сущность Drupal (Node или Custom Entity)
  • Чистый, структурированный код, соответствующий стандартам Drupal

Портирование мобильной игры Melon Playground на ПК

Требуется создать полноценную версию игры Melon Playground (Melon Sandbox) для персональных компьютеров. Исходный код отсутствует, необходима разработка порта с нуля или использование специальных инструментов.

Развертывание и администрирование сайта на 1С-Битрикс на сервере Debian

Требуется специалист для запуска корпоративного сайта на 1С-Битрикс на сервере под управлением Debian. В перспективе - постоянное администрирование веб-серверов с несколькими сайтами. Важны опыт работы со стеком технологий Битрикс и доступность в рабочее время.