Биржа SEO-ссылок: миграция с Laravel на .NET

Бизнес-модулей
15
Пользователей перенесено без потерь
40+
Контекста DDD
2
Открыть проект

Задача

Перенести биржу размещения ссылок с Laravel + Vue на .NET + Angular, сохранив всех пользователей и балансы, и добавить модули, которых не было в оригинале.

Решение

Clean Architecture + CQRS с отдельным Identity-контекстом, внутренний кошелёк, модерация, чат по заказу и уведомления на SignalR; физическая миграция данных с проверкой.

Архитектура

Покупатели (оптимизаторы) создают проекты, выбирают площадки в каталоге и заказывают размещение ссылок; продавцы (вебмастеры) принимают заказы, публикуют ссылки и подтверждают публикацию. Деньги замораживаются во внутреннем кошельке и переходят продавцу только после подтверждения; новые площадки проходят модерацию и проверку владения; у каждого заказа есть свой чат, отзывы и рейтинг.

Регистрация и вход вынесены в отдельный Identity-модуль со своими Domain/Application/Infrastructure, своей схемой Postgres и своей историей миграций — бизнес-данные можно очистить или пересобрать без потери аккаунтов. Баланс переехал из пользователя в отдельный агрегат Wallet: деньги — это понятие маркетплейса, а не учётной записи.

Данные перенесены физически: таблицы переехали в новую схему через ALTER TABLE … SET SCHEMA, поэтому все внешние ключи продолжили работать, а 40+ существующих пользователей сохранили балансы до копейки. Обработчики команд и запросов покрыты тестами на xUnit + Moq, HTTP-конвейер проверяется через WebApplicationFactory на настоящем PostgreSQL в Testcontainers.

Нужно что-то похожее?

Расскажите о задаче — ответим с оценкой сроков и стоимости.

Обсудить проект