Примеры межмодульных взаимодействий
В данном репозитории собраны 5 примеров межмодульного взаимодействия:
- поверх REST
- напрямую через фасады
- на событиях (хореография)
- на событиях (оркестрация)
- на событиях средствами nestjs (оркестрация)
В качестве примера используется простая предметная область с модулями:
- order
- consumer
- account
И всего 3 пользовательскими историями:
- создание потребителя
- пополнение счета
- создание заказа
- Потребитель создается в статусе
ApprovalPending
в модулеconsumer
- Автоматически для потребителя создается его денежный аккаунт в модуле
account
- Если создание аккаунта прошло успешно, то потребитель переходит в статус
Approved
- Счет любого потребитя можно пополнить на указанную сумму денег
- Заказ создается в статусе
ApprovalPending
в модулеorder
- Проверяется существование указанного в заказе потребителя в модуле
consumer
- Если потребитель существует, то заказ оплачивается в модуле
account
- Если оплата прошла успешна, то заказ переходит в статус
PaymentApproved
- Если оплата для оплаты недостаточно средств, то заказ переходит в статус
PaymentRejected