Files
course-plat/docs/admin.md
T
2026-08-31 14:10:20 -03:00

6.2 KiB

Manual do Administrador

Visão Geral

O painel de administrador permite gerenciar todos os aspectos da plataforma de cursos, incluindo usuários, turmas, provas, pagamentos e arquivos.

Acesso

  • URL: /admin/dashboard
  • Role Necessária: admin

Funcionalidades

1. Dashboard Principal

Rota: /admin/dashboard

Página inicial com cards de navegação para todas as funcionalidades administrativas.


2. Gerenciamento de Tipos de Turma

Rota: /admin/dashboard/classTypes

Funcionalidades

  • Criar novos tipos de turma (ex: "Starters", "Movers")
  • Definir faixa etária
  • Definir preço mensal
  • Gerenciar arquivos por tipo de turma

Como Testar

  1. Acesse /admin/dashboard/classTypes
  2. Clique em "Novo Tipo de Turma"
  3. Preencha nome, idade mínima, idade máxima e preço
  4. Salve
  5. Esperado: Tipo de turma aparece na lista

Campos

  • name: Nome do tipo de turma
  • minAge: Idade mínima
  • maxAge: Idade máxima
  • price: Preço mensal

3. Gerenciamento de Turmas

Rota: /admin/dashboard/class

Funcionalidades

  • Criar novas turmas
  • Atribuir professores
  • Definir horário e dias da semana
  • Ativar/desativar turmas
  • Gerenciar alunos matriculados
  • Upload de materiais

Como Testar

  1. Acesse /admin/dashboard/class
  2. Clique em "Nova Turma"
  3. Selecione o tipo de turma
  4. Adicione professores (multi-select)
  5. Defina os dias da semana
  6. Salve
  7. Esperado: Turma criada e visível na lista

Campos

  • classType: Tipo de turma (obrigatório)
  • teachers: Professores (pode ter vários)
  • schedule: Horário das aulas
  • days: Dias da semana
  • active: Status ativo/inativo

4. Gerenciamento de Usuários

Rota: /admin/dashboard/users

Funcionalidades

  • Visualizar todos os usuários
  • Editar informações de usuários
  • Gerenciar roles (admin, teacher, student, parent)
  • Vincular responsáveis a estudantes
  • Excluir usuários

Como Testar

  1. Acesse /admin/dashboard/users
  2. Clique no ícone de editar em um usuário
  3. Altere as roles marcando/desmarcando checkboxes
  4. Para vincular responsável, selecione na lista
  5. Salve
  6. Esperado: Roles atualizadas, vínculos criados

Roles Disponíveis

  • admin: Acesso completo ao painel administrativo
  • teacher: Acesso a turmas atribuídas
  • student: Acesso a turmas matriculadas
  • parent: Acesso a dados dos filhos vinculados

5. Gerenciamento de Pagamentos

Rotas:

  • /admin/dashboard/payments - Visão geral
  • /admin/dashboard/payments/by-class - Por turma

Funcionalidades

  • Criar obrigações de pagamento para alunos
  • Aprovar/rejeitar pagamentos
  • Visualizar comprovantes
  • Estatísticas de pagamentos

Como Testar - Criar Obrigação

  1. Acesse /admin/dashboard/payments
  2. Clique em "Nova Obrigação"
  3. Selecione o aluno
  4. Digite o valor e data de vencimento
  5. Salve
  6. Esperado: Obrigação aparece na lista do aluno

Como Testar - Aprovar Pagamento

  1. Na lista de pagamentos, encontre um pendente
  2. Clique para ver detalhes
  3. Visualize o comprovante
  4. Clique em "Aprovar" ou "Rejeitar"
  5. Esperado: Status atualizado

Status de Pagamento

  • pending: Aguardando aprovação
  • verified: Pagamento aprovado
  • rejected: Pagamento rejeitado

6. Provas e Tarefas

Rotas:

  • /admin/dashboard/exams - Gerenciar provas
  • /admin/dashboard/exam-templates - Templates de prova
  • /admin/dashboard/assignments - Atribuir provas a turmas
  • /admin/dashboard/statistics/exams - Estatísticas

Funcionalidades

  • Criar templates de provas reutilizáveis
  • Adicionar perguntas (múltipla escolha, texto)
  • Atribuir provas a turmas
  • Definir data/hora de início e fim
  • Configurar tentativas permitidas
  • Ver resultados e estatísticas

Como Testar - Criar Template

  1. Acesse /admin/dashboard/exam-templates
  2. Clique em "Novo Template"
  3. Digite título e descrição
  4. Adicione perguntas:
    • Pergunta de múltipla escolha: adicione opções e marque a correta
    • Pergunta de texto: apenas o enunciado
  5. Salve
  6. Esperado: Template criado

Como Testar - Atribuir Prova

  1. Acesse /admin/dashboard/assignments
  2. Clique em "Nova Atribuição"
  3. Selecione o template
  4. Selecione a turma
  5. Defina data/hora início e fim
  6. Configure tentativas permitidas
  7. Salve
  8. Esperado: Prova aparece para os alunos da turma

7. Categorias de Arquivos

Rota: /admin/dashboard/categories

Funcionalidades

  • Criar categorias para organizar arquivos
  • Ex: "Material de Aula", "Lição de Casa", "Provas Antigas"

Como Testar

  1. Acesse /admin/dashboard/categories
  2. Clique em "Nova Categoria"
  3. Digite o nome
  4. Salve
  5. Esperado: Categoria disponível ao fazer upload de arquivos

8. Gerenciamento de Arquivos

Rotas:

  • /admin/dashboard/files - Lista de arquivos
  • /admin/dashboard/files/add - Upload de arquivo
  • /admin/dashboard/files/[id] - Editar arquivo

Funcionalidades

  • Fazer upload de arquivos
  • Associar a turmas ou tipos de turma
  • Categorizar arquivos
  • Gerenciar permissões

Como Testar

  1. Acesse /admin/dashboard/files/add
  2. Digite o nome do arquivo
  3. Selecione o arquivo no computador
  4. Selecione a categoria
  5. Associe a uma turma ou tipo de turma (opcional)
  6. Salve
  7. Esperado: Arquivo disponível para download na turma

Checklist de Testes

  • Criar tipo de turma
  • Criar turma com professores
  • Criar usuário com role student
  • Criar usuário com role teacher
  • Vincular responsável a estudante
  • Matricular estudante em turma
  • Criar obrigação de pagamento
  • Aprovar pagamento
  • Criar template de prova
  • Atribuir prova a turma
  • Fazer upload de material para turma

Possíveis Problemas

Usuário não acessa o admin

  • Verifique: O usuário tem a role admin?
  • Solução: Edite o usuário em /admin/dashboard/users

Turma não aparece para o professor

  • Verifique: O professor está atribuído à turma?
  • Solução: Edite a turma em /admin/dashboard/class

Aluno não vê a prova

  • Verifique: Data/hora da atribuição está correta?
  • Verifique: Aluno está matriculado na turma?
  • Solução: Verifique a atribuição em /admin/dashboard/assignments