·

Análise de Sistemas ·

Linguagens de Programação

Send your question to AI and receive an answer instantly

Ask Question

Preview text

EXPLICAÇÃO A tarefa e pegar a API que já está pronta em nodejs e passar para a linguagem de JAVA no IntelliJ Não tem como realizar o envio do arquivo da API depois de aceito o pedido consigo enviar a API pronta enquanto isso vou deixar a lógica de como ela funciona em forma de respostas do endpoints e CRUDs no POSTMAN e fotos CRUD USUÁRIOS APIs para criação edição e busca de dados dos usuários os dados de usuários criados consultados e editados devem ser salvos e consultados em um arquivo chamado usuariosfidelidadejson Endpoints e Contratos da API CRUD de Usuários POST usuarios Body Request nome string email string dataNascimento date genero genero Body Response id string nome string email string tier string saldoDePontos integer Regras de negocio 1 cada usuário deverá ter um id único 2 não permitir cadastrar emails já cadastrados 3 usuários cadastrados devem começar no tier mais baixo e com 0 pontos 4 os campos nome email e dataNascimento são obrigatórios 5 a dataNascimento deve ser salva no formato yyyymmdd GET usuarios Body Response id string nome string email string tier string saldoDePontos integer Deve devolver uma lista com todos os usuários cadastrados GET usuariosid Body Response id string nome string email string tier string saldoDePontos integer Deve devolver os dados do usuário cujo id foi passado no path param GET usuariosidbeneficios Body Response idBeneficio string nome string descricao string tierMinimo string Deve devolver a lista de benefícios que o usuário tem direito pelo seu tier atual Regra de negócio 1 Deve trazer os benefícios de seu tier atual e também recuperar todos os benefícios dos tiers que requerem um saldo de pontos menor ou igual ao saldo de pontos do tier atual do usuário Exemplo Prático Se um usuário está no tier Prata que requer 5000 pontos e existem três tiers denominados Bronze 2000 pontos Prata 5000 pontos e Ouro 10000 pontos a consulta de benefícios do usuário deve retornar todos os benefícios dos tiers Bronze e Prata mas não os do tier Ouro PUT usuariosid Body Request nome string email string Atualiza os dados do usuário cujo id foi passado no path param API DE PONTOS API para adicionar pontos para o usuário os dados de pontos de usuário devem ser modificado no arquivo usuariosfidelidadejson Endpoints e Contratos da API API pontos POST pontosadicionar Body Request idUsuario string pontos integer Body Response idUsuario string pontos integer pontos no request deve ser a quantidade de pontos que vamos adicionar pontos no reponse deve ser a quantidade de pontos total do usuario atualizado Atenção Criar uma validação para ver se o total de pontos do usuário mudará ele de tier e atualizar o objeto do usuário caso o mesmo mude de tier com o incremento de pontos CRUD TIERS Desenvolver APIs para criação atualização listagem e exclusão de tiers de fidelidade Os dados dos tiers criados e atualizados devem ser salvos e consultados em um arquivo chamado tiersfidelidadejson Endpoints e Contratos da API CRUD de Tiers POST tiers Body Request nome string pontosNecessarios integer Body Response id string nome string pontosNecessarios integer Regras de Negócio 1 Cada tier deve ter um ID único 2 Não permitir a criação de tiers com nomes duplicados ou com uma pontuação já existente 3 Os campos nome e pontosNecessarios são obrigatórios GET tiers Body Response id string nome string pontosNecessarios integer Listagem de todos os tiers disponíveis PUT tiersid Body Request nome string pontosNecessarios integer Body Response id string nome string pontosNecessarios integer Atualiza os dados do benefício cujo id foi passado no path param Desafio Criar um endpoint que deleta logicamente um tier este end point também deve garantir que os usuários que estão nesse tier deletado sejam realocados em um novo tier correspondente a sua pontuação CRUD BENEFICIOS Desenvolver APIs para criação atualização listagem e exclusão de benefícios do programa de fidelidade Os dados dos benefícios devem ser salvos e consultados em um arquivo chamado beneficiosfidelidadejson Endpoints e Contratos da API CRUD de Benefícios POST beneficios Body Request nome string descricao string tierMinimo string Body Response id string nome string descricao string tierMinimo string Regras de Negócio 1 Cada benefício deve ter um ID único 2 Os campos descricao e tierMinimo são obrigatórios GET beneficios Body Response id string nome string descricao string tierMinimo string Listagem de todos os benefícios disponíveis GET beneficiosid Body Response id string nome string descricao string tierMinimo string Traz o benefício cujo id foi passado no path param PUT beneficiosid Body Request nome string descricao string tierMinimo string Body Response id string nome string descricao string tierMinimo string Atualiza os dados do benefício cujo id foi passado no path param DELETE beneficiosid Body Response message beneficio com ID id removido com sucesso Remove o beneficio especificado pelo id passado no path param