Skip to content

Captação — 10. Superfície /admin (login + fila de moderação) #239

Description

@tarcisiopgs

Parte do épico Captação de profissionais — landing page e aprovação interna (frente: frontend). Os mocks (Stitch/Notion) são base direcional, não fonte de verdade — ainda não há protótipo final.

Objetivo: Superfície /admin — login por senha e fila de moderação.

Arquivos: Create src/app/(admin)/admin/, src/features/admin/ · Modify src/kubb/ (regenerar cobrindo TODOS os endpoints) · Test cypress/e2e/admin-moderation.cy.js
Dependências: developmentHC/conectaBemBack#83 (moderação) + developmentHC/conectaBemBack#84 (Swagger)

O que fazer:

  • Verificado: o web autentica via NextAuth (callbacks mapeiam só patient/professional). Definir como o adminLogin entra no NextAuth e propagar userType: "admin". Tela de login /admin (e-mail + senha). Guard de rota é UX; a proteção real é o backend (requireAdmin); o front confirma o papel pela API.
  • Lista em_analise (GET pending) com Aprovar, Reprovar, Reverter. Estados: confirmação antes de Reprovar (motivo opcional); Aprovar imediato + toast; rollback otimista em falha; fila vazia; erros de login distintos (credenciais vs sem acesso).

Test scenarios: login correto/errado distintos; não-admin barrado; lista só em_analise; fila vazia; aprovar/reprovar/reverter atualizam; rollback otimista em falha de rede.

Pronto quando: o admin loga via NextAuth, vê a fila e aprova/reprova/reverte, com estados completos e rota protegida no backend.

Metadata

Metadata

Assignees

No one assigned

    Labels

    captaçãoFrente: Captação de profissionais (LP + cadastro + moderação)enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions