RF => Requisitos Funcionais
RNF => Requisitos não funcionais qual biblioteca utilizar, qual banco de dados
RN => Regra de negócio
####################################
RF Deve ser possível cadastrar um novo carro.
RN Não deve ser possível cadastrar um carro com uma placa já existente. O carro deve ser cadastrado, por padrão, com disponibilidade . O usuário responsavel pelo cadastro deve ser um usuário admin
RF Deve ser possível listar todos os carros disponíveis (available == true). Deve ser possível listar todos os caroos disponíveis pelo nome da categoria. Deve ser possível listar todos os caroos disponíveis pelo nome da marca. Deve ser possível listar todos os caroos disponíveis pelo nome da carro.
RN O usuário não precisa estar logado no sistema
RF Deve ser possível cadastrar uma especificação para um carro.
RN Não deve ser possível cadastrar uma especificação para um carro não cadastrado. Não deve ser possível cadastrar uma especificação já existente para o mesmo carro.
- O usuário responsavel pelo cadastro deve ser um usuário admin
RF Deve ser possível cadastrar a imagem do carro
RNF Utilizar o multer para upload dos arquivos
RN O usuário deve poder cadastrar mias de uma imagem para o mesmo carro. O usuário responsavel pelo cadastro deve ser um usuário admin
Não deve ser possível alterar a placa de um carro já cadastrado.
RF Deve ser possível cadastrar um aluguel
RN O aluguel deve ter duração mínima de 24 horas. Não deve ser possível cadastrar um novo aluguel caso já exista um abertto para o mesmo carro. Não deve ser possível cadastrar um novo aluguel caso já exista um abertto para o mesmo usuário. O usuário deve estar logado Ao relizar um alguel, o status do carro deverá ser indisponível
RF Deve ser possível realizar a devolução de um carro alugado
RN O usuário deve estar logado Se o carro for devolvido com menos de 24 horas, deverá ser cobrado a diária completa Ao realizar a devolução, o carro deverá ser liberado para outro aluguel Ao realizar a devolução, o usuário deverá ser liberado para outro aluguel Ao realizar a devolução, deverá ser calculado o total do aluguel Caso o horário de devolução seja superior ao horário previsto de entrega, deverá ser cobrado multa proporcional ao período de atraso Caso haja multa, deverá ser somado ao total do aluguel
RF Deve ser possível realizar a busca de todos os alugueis feitos pelo usuário
RN O usuário deve estar logado
RF
- Deve ser possível o usuário recuperar a senha informando o e-mail
- O usuário deve receber um e-mail com o passo a passo para a recuperação da senha
- O usuário deve conseguir inserir uma nova senha
RN
- O usuário precisa informar uma nova senha
- O link enviado para a recuparação deve expirar em 3 horas