Módulos NestJS
Arquitetura
O backend é organizado em módulos autocontidos, cada um com sua própria responsabilidade.
Módulos
Auth
Responsabilidade: Autenticação JWT e registro de usuários.
Rotas:
POST /api/auth/register- Registro global (primeiro usuário → superadmin)POST /api/auth/login- LoginGET /api/auth/me- Dados do usuário atual
Rotas por tenant:
POST /t/:slug/auth/register- Registro no tenant (primeiro → admin)POST /t/:slug/auth/login- Login no tenant
Users
Responsabilidade: Gerenciamento de usuários.
Rotas:
GET /t/:slug/users- Listar usuáriosPOST /t/:slug/users- Criar usuárioPUT /t/:slug/users/:id- Atualizar usuárioDELETE /t/:slug/users/:id- Deletar usuário
Tenants
Responsabilidade: Gerenciamento de tenants (superadmin).
Rotas:
GET /api/superadmin/tenants- Listar todosPOST /api/superadmin/tenants- CriarPUT /api/superadmin/tenants/:id- AtualizarPUT /api/superadmin/tenants/:id/toggle- Ativar/desativar
Menu
Responsabilidade: Cardápio (categorias e itens).
Rotas:
GET /t/:slug/menu/categories- CategoriasPOST /t/:slug/menu/categories- Criar categoriaGET /t/:slug/menu/items- Itens (público)POST /t/:slug/menu/items- Criar item (admin)
Orders
Responsabilidade: Pedidos.
Rotas:
GET /t/:slug/orders- Listar pedidosPOST /t/:slug/orders- Criar pedido (público)PUT /t/:slug/orders/:id- Atualizar pedidoPUT /t/:slug/orders/:id/status- Atualizar status
Reservations
Responsabilidade: Reservas de mesas.
Rotas:
GET /t/:slug/reservations- ListarPOST /t/:slug/reservations- Criar (público)PUT /t/:slug/reservations/:id- AtualizarDELETE /t/:slug/reservations/:id- Cancelar
Tables
Responsabilidade: Mesas do restaurante.
Rotas:
GET /t/:slug/tables- ListarPOST /t/:slug/tables- CriarPUT /t/:slug/tables/:id- AtualizarDELETE /t/:slug/tables/:id- Deletar
Filial
Responsabilidade: Filiais.
Rotas:
GET /t/:slug/pdvs- ListarPOST /t/:slug/pdvs- CriarGET /t/:slug/pdvs/my- Filiais do usuário atual
Kitchen (WebSocket)
Responsabilidade: Display de cozinha em tempo real.
Namespace: /kitchen
Eventos:
newOrder- Novo pedidoorderStatusUpdate- Status atualizado