Техническое задание: Веб-система управления строительными проектами

Цель проекта

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

Основной функционал

1. Интеграция и отображение сделок

  • Автоматическая синхронизация сделок из CRM.
  • Группировка сделок по двум основным воронкам:
    • Строятся (активные проекты)
    • Завершенные (закрытые проекты)

2. Управление сделкой и финансами

  • Возможность закрепить прораба (ответственного) за сделкой.
  • Отображение трех финансовых показателей сделки:
    • Бюджет на проект.
    • Плановые затраты на снабжение.
    • Сумма, заложенная на строительные работы.
  • Автоматический расчет вознаграждения прораба (5% от суммы "заложено на строительство") после его назначения.

3. Личный кабинет прораба

  • Панель с ключевыми метриками:
    • Количество активных объектов (из воронки "Строятся").
    • Количество завершенных объектов (из воронки "Завершенные").
    • Общий заработок (рассчитывается на основе завершенных объектов и суммы "заложено на строительство").
  • Функционал для управления рабочими:
    • Добавление рабочих к конкретной сделке.
    • Ведение табеля учета рабочего времени (простановка часов работы по датам).

4. Личный кабинет рабочего

  • Отображение общего количества отработанных часов.
  • Детализация отработанных часов по каждому объекту (сделке).

5. Модуль учета затрат (снабжение)

  • Ведение истории закупок материалов для каждой сделки.
  • Базовые CRUD-операции: добавление, редактирование, удаление записей.
  • Особый механизм удаления товаров:
    • Товар не удаляется физически, а помечается как неактивный ("вычеркивается") и перестает влиять на общую сумму.
    • При попытке удаления открывается модальное окно с выбором причины:
      • Кнопка "Добавлен с ошибкой" - выполняется простое вычеркивание.
      • Кнопка "Своя причина" - появляется поле для ввода комментария.
    • Возможность просмотра причины удаления для каждой позиции.

6. Требования к интерфейсу

  • Современный, интуитивно понятный UI/UX дизайн.
  • Адаптивная верстка.

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

  • Интеграция с внешней CRM-системой для получения данных о сделках.
  • Разработка отдельной веб-платформы с собственной базой данных.
  • Реализация ролевой модели (прораб, рабочий).

Разработка диаграммы Тьюринга для возведения двоичного числа в квадрат

Требуется создать детальный алгоритм и диаграмму состояний для машины Тьюринга, выполняющей операцию возведения двоичного числа в квадрат. Задача требует глубокого понимания теории автоматов. Работа срочная.