Pular para o conteúdo principal

Feature - Catalogo de Cursos, Ciclos e Turmas

Objetivo

Expor estrutura de oferta (curso -> ciclo -> turma) para consumo de portal e operacao interna.

Endpoints principais

  • /api/dhedalos/v1/courses
  • /api/dhedalos/v1/courses/sidebar
  • /api/dhedalos/v1/course/{slug}
  • /api/dhedalos/v1/course/{slug}/next-cycle
  • /api/dhedalos/v1/courses/{class_id}/meeting-type
  • /api/dhedalos/v1/cycles
  • /api/dhedalos/v1/cycles/{cycle_id}/classes
  • /api/dhedalos/v1/cycles/{year}
  • /api/dhedalos/v1/cycles/pcd-upcoming

Entidades envolvidas

  • curso
  • ciclo
  • classes
  • taxonomias course_categories e course_supervisors

Regras de acesso

  • Misto entre sessao WordPress + role e token de servico.
  • Parte das rotas de courses.php nao declara permission_callback explicito.

Regras de negocio observadas

  • filtros por role no sidebar e listagens de cursos/ciclos,
  • calculo de proximo ciclo com suporte a bypass de cache (no-cache),
  • endpoint dedicado para PCD em ciclos proximos.

Cache associado

  • course_slug_id_<slug>
  • course_cycles_<slug>
  • re_enroll_status_<slug>
  • invalidacao em update de curso e ciclo.

Dependencias

  • Persistencia em wp_posts/wp_postmeta.
  • Configuracoes ACF para campos de curso/ciclo.

Pendencias

  • Formalizar contrato de permissao das rotas sem permission_callback explicito.