Receba novidades do Hedhog no seu e-mail
Novos lançamentos, receitas e breaking changes — sem spam.
Submódulo LMS
evaluations
Sistema de avaliação de satisfação do aluno — um catálogo de tópicos direcionado a cursos, aulas, sessões, questões ou exames, e as respostas de nota paginadas coletadas contra esses tópicos.
Caminho de origem: libraries/lms/src/evaluation
Arquivo do módulo: evaluation.module.ts
Introdução
O submódulo Evaluations é a camada de pesquisa de satisfação do HedHog LMS. Um tópico de avaliação é um template de pergunta (por exemplo, "O conteúdo estava claro?") marcado com um `targetType` — course, course_lesson, course_class_session, question ou exam — que determina qual tipo de entidade os alunos podem avaliar contra ele. Tópicos são explicitamente ordenáveis (`PATCH /topics/reorder`), de modo que o painel de admin possa controlar a sequência que os alunos veem ao avaliar, e são protegidos contra exclusão depois que coletaram notas (`422 Unprocessable Entity`), preservando a integridade dos dados históricos de pesquisa.
O `GET /lms/evaluations` é a superfície de consulta transversal: retorna as respostas de nota individuais com filtragem rica por curso, turma, instrutor, avaliador e intervalo de datas, e enriquece cada linha com um par `topicAvgScore`/`topicRatingCount`, de modo que a UI de admin possa mostrar uma resposta individual junto com o agregado de seu tópico para contexto. O `GET /lms/evaluations/filter-options` deriva os valores de dropdown disponíveis (cursos, turmas, instrutores, avaliadores) diretamente dos tópicos que já têm notas, de modo que os menus de filtro nunca mostrem opções com zero resultados.
Notavelmente, o `EvaluationService` também implementa `getCourseLessonTopics`, `getMyLessonRatings` e `submitLessonRatings` — o fluxo real de submissão voltado ao aluno — mas esses não são expostos pelo `EvaluationController` nem pelas ferramentas MCP deste submódulo; eles são consumidos pelo portal do aluno Platforma (`GET/POST /lms/platforma/lessons/:lessonId/evaluation-topics`, `/my-evaluation`, `/evaluate`), já que o `EvaluationService` é exportado do `EvaluationModule` para uso entre módulos.
Endpoints HTTP
9 endpoints
Estatísticas gerais: total de avaliações, pontuação média, tópicos avaliados, total de avaliadores.
Valores de dropdown de filtro disponíveis (cursos, turmas, instrutores, avaliadores), derivados de tópicos avaliados.
Lista paginada de tópicos de avaliação.
- Query
- page, pageSize, search, targetType
Cria um tópico de avaliação.
Body
| Field | Type | Required | Notes |
|---|---|---|---|
| name | string | yes | Max 255 chars |
| targetType | 'course' | 'course_lesson' | 'course_class_session' | 'question' | 'exam' | yes | — |
| description | string | no | — |
| order | number | no | Min 0 |
| isActive | boolean | no | — |
Obtém um tópico por ID; 404 se ausente.
- Params
- id (int)
Reordena os tópicos para corresponder à posição de índice de cada ID no array.
Body
| Field | Type | Required | Notes |
|---|---|---|---|
| ids | number[] | yes | — |
Atualiza um tópico (todos os campos opcionais).
- Params
- id (int)
Exclui um tópico; 422 se já tiver notas.
- Params
- id (int)
Lista paginada de respostas de nota de avaliação com contexto agregado do tópico.
- Query
- page, pageSize, search, courseId, classId, instructorId, evaluatorId, dateFrom, dateTo
Ferramentas MCP
Ferramentas nomeadas que podem ser chamadas por modelos de IA através do Model Context Protocol (MCP).
lms.evaluations.listLista avaliações com filtros opcionais (curso, turma, instrutor, avaliador, intervalo de datas)
lms.evaluations.statsRetorna estatísticas agregadas de avaliações
lms.evaluations.filter-optionsRetorna as opções de filtro disponíveis para a lista de avaliações (cursos, instrutores, avaliadores)
lms.evaluations.topics.listLista tópicos de avaliação com paginação e filtros opcionais
lms.evaluations.topics.getRetorna um único tópico de avaliação por ID
lms.evaluations.topics.createCria um novo tópico de avaliação
lms.evaluations.topics.updateAtualiza um tópico de avaliação existente
lms.evaluations.topics.deleteExclui um tópico de avaliação por ID
lms.evaluations.topics.reorderReordena tópicos de avaliação