‫-: E agora para terminar a seção, vamos agora terminar
‫muito rapidamente a API de reservas.
‫E mais uma vez, eu realmente quero que você pratique suas
‫habilidades neste
‫ponto, e então, basicamente, implemente todos os pontos de extremidade
‫ausentes completamente por conta própria aqui.
‫Então, realmente adicionando todas as operações CRUD.
‫Então, criando, recebendo, lendo e atualizando reservas.
‫Então, pause o vídeo agora e vejo você em um segundo.
‫Ok, deixe-me começar aqui usando a fábrica que
‫já temos para criar todos
‫esses cinco manipuladores.
‫Portanto, a criação de reserva é feita usando
‫a fábrica. createOne
‫e passando na reserva.
‫E agora, deixe-me repetir isso cinco vezes.
‫Portanto, obtenha reserva, getAllBookings,
‫updateBooking e deleteBooking.
‫E agora aqui o mesmo.
‫Pegue todos, ou realmente consiga um.
‫Então aqui está getAll.
‫Aqui está updateOne.
‫E deleteOne.
‫Então, muito fácil.
‫Agora, passando para as rotas.
‫Então, roteador. rota, e assim
‫sem o id da reserva, a gente tem como sempre
‫pegar tudo e criar um novo
‫né.
‫Agora, tudo isso será realmente protegido e
‫também restrito apenas a administradores e guias de liderança.
‫E então, deixe-me fazer isso fora deste manipulador.
‫E aqui, tudo o que teremos
‫é realmente o bookingController. getAllBookings.
‫E então, assim como antes, vou usar
‫o middleware de proteção completamente do lado de fora.
‫Então, roteador. use (authController. proteger).
‫Então, posso removê-lo daqui
‫e, em seguida, as próximas rotas e todas
‫elas estarão acessíveis apenas para o administrador e guias líderes.
‫Agora certo,
‫para um guia principal saber basicamente quais
‫turistas foram reservados, e para um
‫administrador, bem, para atualizar ou excluir turistas, se necessário.
‫Tudo bem.
‫Então esse é o authController. Guia restrito para
‫administrador
‫e guia.
‫Assim .
‫obter e. postar também,
‫e
‫esse é o createBooking.
‫Agora está certo.
‫E agora as rotas com o id.
‫Então, como sempre, em todos os nossos outros recursos, fizemos
‫exatamente o mesmo.
‫Então esse é o bookingController. getBooking,
‫então temos o patch, que é para atualização,
‫então updateBooking.
‫E, finalmente, temos. excluir
‫para bookingController. deleteBooking.
‫Então, é muito fácil essa é a nossa API de reservas.
‫E então, apenas para testar,
‫vamos adicionar getAllBookings e getBooking ao Postman.
‫Tudo bem, então não estou realmente interessado em adicionar
‫todos esses pontos de extremidade aqui.
‫Isso leva muito tempo.
‫Tudo bem.
‫Então, deixe-me tentar com este.
‫Então, isso é
‫reservas, e isso já deve ser suficiente.
‫Ou não, precisamos da autorização também.
‫E então vamos rapidamente fazer o login como administrador.
‫Então, acredito que
‫seja admin @ natours. Io.
‫Sim, isso é correto.
‫E então, vamos ver.
‫E aqui temos a nossa reserva.
‫E agora é apenas
‫um, mas funciona.
‫E você vê que na verdade o passeio é preenchido
‫aqui, que por sua vez é preenchido com
‫os guias, mas como dissemos antes, isso não é grande coisa
‫neste caso, porque o quadrado aqui não será feito
‫tantas vezes.
‫Agora certo, também o usuário é preenchido
‫e, claro, o prêmio.
‫Agora certo, vamos salvar rapidamente isso aqui
‫e na verdade não em
‫uma nova coleção, mas aqui eu quero criar uma nova pasta para reservas.
‫Portanto, obtenha todas
‫as reservas.
‫Vamos apenas copiar aqui.
‫Agora, e é claro, precisamos fazer o login aqui também.
‫E assim obter uma reserva.
‫Direto, hein, onde
‫é isso?
‫Achei que tinha acabado de criar uma nova pasta.
‫Mas aparentemente não.
‫Ok, então este está aqui.
‫Certo, agora, novamente, não vou criar esses outros
‫endpoints aqui no Postman porque esse não
‫é realmente o ponto.
‫Você já sabe como fazer isso.
‫De qualquer forma, com isso, nossa API está realmente terminada, e tudo
‫o que tenho agora para você são algumas,
‫digamos, considerações finais e desafios que você deve
‫completar a fim de levar este projeto, e
‫também suas habilidades, até avançar.