Перейти к содержимому
productionСайтыBackendDevOps

Агрегатор услуг с личными кабинетами

Публичный проект: ВечнаяПамять

Платформа дистанционного заказа услуг по уходу за захоронениями в Екатеринбурге и Свердловской области. Клиент оформляет заказ онлайн, исполнитель принимает его в работу и подтверждает результат фотоотчётом, оператор и администратор контролируют процесс и финансовые операции.

Публичная витрина и карточка услугикаталогкарточказаказоплата
Каталог и оформление заказа
Административная панель со списком заказов и статусамиреестрстатусыправаэкспорт
Административная часть без персональных данных

Задача

Перевести услугу, которая раньше согласовывалась вручную, в полноценный онлайн-процесс: от выбора услуги и оплаты до приёмки результата и разбора спорных ситуаций.

Результат

  • заказ оформляется, оплачивается и принимается без ручного согласования
  • все действия сторон фиксируются и доступны для разбора спора
  • деньги проходят по журналу операций, возвраты выполняются штатно
  • обновление выкатывается из защищённой ветки с резервной копией и проверкой состояния
  • самый полный проект контура: 408 файлов и ~32 400 строк собственного кода

Что реализовано

  • публичный каталог услуг и товаров
  • стандартные и индивидуальные заказы
  • выбор места, кладбища и даты выполнения
  • личный кабинет клиента
  • кабинет исполнителя
  • административная панель
  • роли клиента, исполнителя, оператора и администратора
  • статусы заказа и история переходов
  • предложения исполнителей и согласование стоимости
  • чат по заказу и вложения
  • фотоотчёты до и после выполнения

Архитектура

  1. 01монорепозиторий pnpm: apps/web (Next.js App Router), apps/api (NestJS), packages/shared с общими типами и тестами
  2. 0224 модуля API: auth, users, orders, payments, wallet, reports, reviews, chats, conflicts, bids, executor, executors, market, services, cemeteries, content, files, notifications, support, warranty, admin, audit, prisma, common
  3. 03схема Prisma на ~70 моделей и перечислений, 19 миграций, скрипты наполнения и импорта справочников
  4. 04пять ролей: клиент, исполнитель, оператор, администратор, суперадминистратор; guard-ы по ролям и необязательная авторизация для публичных запросов

Смежные проекты

внутренний проектBackendАвтоматизация

Внутренняя система учёта и отчётности

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

Агрегатор услуг с личными кабинетами | RKTSocial