Заказ закрыт
Нужно сделать базу компании с карточками и личными данными

Бюджет: по договоренности
Разработка сайта на Drupal с базой компаний и многоуровневым доступом
Ниже — детальный план реализации вашего проекта.

1. Архитектурное решение
Основные компоненты системы:
модуль пользовательской регистрации и авторизации;
личный кабинет пользователя;
база данных компаний с карточками;
система рейтингования;
платёжный модуль;
фильтры и поиск.

2. Структура данных
Пользователи (User)
Поля:
$uid (ID);
$name (ФИО);
$mail (email);
$phone (телефон);
$status (статус: неавторизованный / верифицированный / оплаченный);
$subscription_end (дата окончания подписки);
$verification_status (статус верификации).
Компании (Content Type «Company»)
Поля:
$title (название компании);
$field_description (описание);
$field_contacts (контакты компании);
$field_rating (рейтинг, вычисляемое поле);
$field_owner (ссылка на владельца-пользователя);
$field_documents (загруженные документы).

3. Реализация на Drupal
Базовые модули
Установите и настройте:

Commerce (для платежей);
Rules (автоматизация процессов);
Flag (отметки/избранное);
Search API (расширенный поиск);
Rate (рейтингование);
Шаги настройки
Создание типов контента
«Компания» (company) через UI или YAML-конфигурации.

Настройка пользователей
В /admin/config/people/accounts активируйте регистрацию.
Добавьте поля ФИО, телефон через UI.
Личный кабинет
Создайте страницу /user/%user/dashboard через Views.
Отображайте:
список принадлежащих пользователю компаний;
статус подписки;
кнопки оплаты.
Система статусов

Используйте User Roles:
anonymous — неавторизованные;
verified — верифицированные;
paid — оплатившие.
Настройте права доступа в /admin/people/permissions.

Верификация
После регистрации отправляйте письмо со ссылкой на верификацию (модуль User Verification).
При переходе по ссылке присваивайте роль verified.
Платежи и подписка
Установите Drupal Commerce.
Создайте продукт «Подписка на 1 месяц».
Настройте:
платёжные методы (Stripe, PayPal);
автоматические списания;
уведомления о продлении.
Рейтинг компаний
Установите модуль Rate.
Добавьте виджет рейтинга на карточку компании.
Вычислите средний рейтинг через Views Aggregation.
Фильтрация по рейтингу

Создайте View со списком компаний.
Добавьте фильтр 
Реализуйте сортировку: «по рейтингу ↑/↓».
Блокировка при неоплате
Через Rules создайте правило:
Условие: $subscription_end < now().
Действие: отозвать роль paid, отправить уведомление.
Отображение количества компаний
Создайте Block через Views:
Подсчёт всех опубликованных компаний.
Разместите на главной странице.

4. Права доступа (Permissions)
Роль Доступ к списку компаний Доступ к контактам Доступ к рейтингу
anonymous ❌ ❌ ❌
verified ✅ (количество) ❌ ✅ (общий рейтинг)
paid ✅ (полный список) ✅ ✅ (детализированный)
5. Интерфейс и UX
Главная страница:
форма регистрации;
блок «Работает X компаний» (Views Block);
поиск по компаниям.
Личный кабинет (/dashboard):
список ваших компаний;
статус подписки;
кнопка «Оплатить»;
форма загрузки данных компании.
Карточка компании (/company/{nid}):
базовая информация (для всех);
контакты и детали (только для paid).
6. Техническая реализация ключевых функций
Автоматическое присвоение рейтинга
Пользователи голосуют через виджет Rate.
Views вычисляет средний рейтинг:
Field: Content: Rating (Average)
Aggregation: Average
Фильтрация
В Views добавьте:
exposed filter по рейтингу (диапазон: 1–5);
сортировку по рейтингу (по убыванию).
Блокировка доступа
Правило (Rules):
Event: Cron maintenance.
Condition: User subscription expired.
Action: Remove role «paid», send email.
7. Безопасность
HTTPS для всего сайта.
Защита от брутфорса (модуль Login Security).
Резервное копирование (модуль Backup and Migrate).
Ограничение загрузки файлов (только PDF, DOCX, размеры).
8. Тестирование
Проверьте:
Регистрацию и верификацию.
Процесс оплаты и присвоение роли paid.
Отображение данных для разных ролей.
Работу фильтра по рейтингу.
Автоматическую блокировку при неоплате.
9. Дополнительные рекомендации
Кеширование: включите Varnish или Redis для производительности.
SEO: настройте мета-теги для карточек компаний.
Мобильная версия: используйте тему Bootstrap.
Аналитика: подключите Google Analytics через модуль GA.
10. Сроки и ресурсы
Этапы:
Настройка ядра Drupal — 2–3 дня.
Реализация пользователей и ролей — 2 дня.
Разработка карточек компаний — 3 дня.
Платёжная система — 3–4 дня.
Тестирование и доработка — 3 дня.
Опубликован 24.12.2025 в 12:07 Последнее изменение: 24.12.2025 в 14:16
Заказ находится в архиве

Выберите способ верификации:

Обновите страницу после прохождения верификации.