feat: enrich portfolio list with total value and position breakdown from MOEX #10

Merged
ksv741 merged 7 commits from perf/portfolio-enricher-optimization into main 2026-06-14 14:19:56 +03:00
Owner

Summary

  • Portfolio list (GET /api/v1/portfolios) теперь возвращает обогащённые данные:
    totalValue, positionCount, shareCount, bondCount — один batch-запрос к MOEX
    для всех портфелей пользователя
  • PortfolioCard на фронтенде показывает:
    • название + общая стоимость (крупно, справа)
    • чипсы: N акций / M облигаций / K позиций
    • описание + дата обновления
  • TDD: 7 новых тестов для PortfolioService (5 findAll + 2 findOne)

Что изменилось

Коммит Изменение
461a5b1 PortfolioListResponseDto — новый DTO с totalValue, positionCount, shareCount, bondCount
25a6d22 Тесты для findAll с моками Prisma/MoexClient/Cache
f0e5e36 findAll: include positions → batch enrich → per-portfolio aggregates
a8b3b55 Swagger: @ApiOkResponse для enriched списка
7b3b77f Frontend: Portfolio interface — 4 новых поля
2d20899 PortfolioCard: стоимость + чипсы с русским склонением
1017fd4 docs: spec + plan
## Summary - Portfolio list (`GET /api/v1/portfolios`) теперь возвращает обогащённые данные: `totalValue`, `positionCount`, `shareCount`, `bondCount` — один batch-запрос к MOEX для всех портфелей пользователя - PortfolioCard на фронтенде показывает: • название + общая стоимость (крупно, справа) • чипсы: N акций / M облигаций / K позиций • описание + дата обновления - TDD: 7 новых тестов для PortfolioService (5 findAll + 2 findOne) ## Что изменилось | Коммит | Изменение | |---|---| | `461a5b1` | PortfolioListResponseDto — новый DTO с totalValue, positionCount, shareCount, bondCount | | `25a6d22` | Тесты для findAll с моками Prisma/MoexClient/Cache | | `f0e5e36` | findAll: include positions → batch enrich → per-portfolio aggregates | | `a8b3b55` | Swagger: @ApiOkResponse для enriched списка | | `7b3b77f` | Frontend: Portfolio interface — 4 новых поля | | `2d20899` | PortfolioCard: стоимость + чипсы с русским склонением | | `1017fd4` | docs: spec + plan |
ksv741 added 7 commits 2026-06-14 14:19:44 +03:00
ksv741 merged commit 1017fd4f08 into main 2026-06-14 14:19:56 +03:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: moex/moex-vibe#10
No description provided.