Criar controladores
Para cada elemento base do sistema (aventura, aventureiro, npc, monstro, encontro, desafio) criar um controlador, responsável por inserir, listar e ler um objeto desses. O controlador deve ser baseado no controlador principal e deve utilizar o seguinte padrão em suas rotas.
GET "objeto/:id" para leitura GET "objeto/" para listar POST "objeto/" para inserir
Inserção de objetos compostos (como encontros e aventuras) devem receber o id dos componentes para realizar a inserção (para adicionar um npc a um encontro ele já deve ter sido inserido na base e deve-se utilizar o id dele para recuperar o elemento)
Esses controladores devem:
- Validar os objetos recebidos
- Utilizar DbHandler para transformar Ids em objetos
- Utilizar o DbHandler para enviar os objetos ao banco de dados
Resumo:
- Implemenmtar um controlador Ctrl para cada objeto base (src/api/controllers/objeto.ts)