Receba novidades do Hedhog no seu e-mail
Novos lançamentos, receitas e breaking changes — sem spam.
Submódulo LMS
bitcode-wallets
Carteiras de moeda virtual (Bitcode) para alunos com um livro-razão de transações de crédito/débito. Bitcodes são concedidos principalmente através de Achievements.
Caminho de origem: libraries/lms/src/bitcode-wallet
Arquivo do módulo: bitcode-wallet.module.ts
Introdução
Cada carteira é um livro-razão um-para-um atrelado a uma `person`, mantendo um saldo corrente construído a partir de transações individuais de crédito/débito, em vez de um único número mutável — cada mudança no saldo de Bitcode de um aluno é registrada como sua própria linha auditável com um tipo, valor e descrição opcional. O `BitcodeWalletController` voltado ao admin (`/lms/bitcode-wallets`) cobre o CRUD de carteiras e permite que um operador lance transações manuais diretamente.
Um segundo caminho, self-service, existe fora do próprio controller deste submódulo: o portal do aluno Platforma expõe `GET /lms/platforma/bitcodes/wallet` e `POST /lms/platforma/bitcodes/transactions`, permitindo que um aluno autenticado veja sua própria carteira e crie suas próprias transações usando um `CreateCurrentBitcodeWalletTransactionDto` dedicado (que adiciona um campo `source` opcional não presente no DTO de admin, para marcar onde um crédito self-service se originou). Um `UpdateBitcodeWalletTransactionDto` também existe no código-fonte, mas não tem rota de controller em lugar algum da base de código — transações individuais podem ser criadas, mas nunca editadas ou listadas por conta própria; o histórico de transações da carteira é presumivelmente exibido como parte da resposta de detalhe da carteira.
Endpoints HTTP
6 endpoints
Lista paginada de carteiras, pesquisável por nome da pessoa.
- Query
- page, pageSize, search
Obtém uma carteira incluindo seu histórico de transações.
- Params
- id (int)
Cria uma carteira para uma pessoa.
Body
| Field | Type | Required | Notes |
|---|---|---|---|
| personId | number | yes | Min 1 |
Atualiza a pessoa vinculada a uma carteira.
- Params
- id (int)
Body
| Field | Type | Required | Notes |
|---|---|---|---|
| personId | number | no | Min 1 |
Exclui uma carteira; 204 No Content.
- Params
- id (int)
Registra uma transação de crédito ou débito na carteira.
- Params
- id (int, wallet id)
Body
| Field | Type | Required | Notes |
|---|---|---|---|
| type | 'credit' | 'debit' | yes | — |
| amount | number | yes | Min 1 |
| description | string | null | no | Max 2000 chars |
Ferramentas MCP
Ferramentas nomeadas que podem ser chamadas por modelos de IA através do Model Context Protocol (MCP).
lms.bitcode-wallet.listLista carteiras BitCode do LMS com paginação e busca por nome da pessoa opcionais
lms.bitcode-wallet.getRetorna uma única carteira BitCode por ID incluindo seu histórico de transações
lms.bitcode-wallet.createCria uma nova carteira BitCode para uma pessoa
lms.bitcode-wallet.updateAtualiza a pessoa vinculada a uma carteira BitCode
lms.bitcode-wallet.deleteExclui uma carteira BitCode por ID
lms.bitcode-wallet.create-transactionCria uma transação de crédito ou débito em uma carteira BitCode