Saldos (Dashboard)
Pré-requisitos de acesso
- Permissão (módulo):
manageCorporateAccount - Licença/Feature: Nenhuma para o painel; a aba Crowdfunding só carrega se a feature
CROWDFUNDINGestiver habilitada na licença do tenant. - Contêiner do menu: GERAL → grupo Dashboard
O que é / quando usar
Painel analítico (somente leitura, rota /dashboard-balances) que consolida os saldos custodiados na plataforma, separados em cinco abas: Geral, Crypto, Tokenização, Investimentos e Crowdfunding. É a visão de "quanto a casa guarda" por classe de ativo — quantidade de detentores, total em ativos e movimentação mensal. Use para conciliação executiva e acompanhamento patrimonial.
Pré-condições
- Permissão:
manageCorporateAccountna role (permissão dupla — enum CPM + módulo no DB). - Licença/Feature: a aba Crowdfunding depende da feature
CROWDFUNDING(verificada em runtime viaFeaturesStatusService). Se desabilitada, os dados de crowdfunding não são buscados. - Dependências de outras telas: os dados vêm de três serviços diferentes (
TokensService.getGeneralCryptoBalances,OrderService.getAllQuotations,StoreService.getCrowdfundingBalances) — ou seja, BSM/OBS + Crowdfunding.
Como o painel é montado
Uma única tela com abas locais (categoryList = ['general','crypto','tokenization','investment','crowdfunding']). Ao abrir, o painel carrega em paralelo os saldos gerais de cripto/token/investimento e as cotações; em seguida, se CROWDFUNDING estiver ligada, busca os saldos de crowdfunding e recompõe as estatísticas. Trocar de aba (setCurrentCategory) só alterna o componente exibido — não refaz a busca.
| Aba | Conteúdo | Detalhe |
|---|---|---|
| Geral | Consolidado de todas as classes | Cards Crypto/Tokenização/Investimentos/Crowdfunding e gráficos comparativos |
| Crypto | Saldos de criptoativos | Detentores, total em token, total em fiat, movimentação mensal |
| Tokenização | Saldos de tokens emitidos | Detentores, total, fiat, movimentação |
| Investimentos | Cotas de investimento (staking) | Detentores, total, fiat, movimentação |
| Crowdfunding | Cotas de crowdfunding | Detentores (público/privado/estrangeiros), total, movimentação por investimento |
Regras de negócio / cuidados
Atenção
- Conversão para fiat usa cotação em USD. O painel multiplica o saldo em token pela cotação correspondente (
amountUsd) obtida emgetAllQuotations. Se uma cotação não existir para um ativo, o multiplicador cai para 1 — o "total em fiat" daquele ativo fica igual ao total em unidades, o que pode distorcer o consolidado. Sempre cruze com as cotações vigentes. - Saldo nunca deve ser lido como zero por padrão. O painel mostra spinner enquanto carrega e página de erro em falha; um valor ausente é estado de carregamento/erro, não saldo real igual a zero.
- Crowdfunding só aparece com a feature ligada. Em tenants sem
CROWDFUNDING, a aba existe mas não traz dados.
- Valores financeiros: todos os somatórios são feitos com
BigNumber(multiplicação por cotação e soma de movimentações) — sem arredondamento intermediário. Confira casas decimais por ativo. - Movimentação mensal considera o
monthlyMovement/balanceByMonthretornado pelo backend; para crowdfunding, só conta o total do mês corrente.