Aplicação de cadastro, visualização, atualização e remoção de: usuários, imóveis, categorias de imóveis e agendamento de visitas aos imóveis.
- Cadastro, visualização e atualização de todas as entidades
- Middleware de erro, validação de data/hora, autenticação e de permissão de Administrador.
- Configurações dos testes e conexão com o banco de dados do teste e banco de produção.
- Docker
- Typescript
- NodeJs
- Express
- TypeORM
- Yup
- JsonWebToken
- Bcrypt
- Tests Jest
- SQLite
- Postgres
- Docker / Docker compose
- Rotas com permissão de administrador ou/e com autenticação devem estar devidamente protegidas;
- Não pode ser possível criar mais de um usuário com o mesmo email;
- Ao deletar um usuário, deve-se alterar o seu estado de isActive para false, e caso ja esteja, retornar um erro;
- Quando o usuário efetuar o login, deve-se retornar um json contendo o token;
- Endereços e categorias devem ser únicos;
- Validar se o horário da visita a ser agendada está entre 08h00 as 18h00;
- Validar se o dia da visita a ser agendada corresponde entre segunda-feira a sexta-feira;
- Não pode ser possível realizar dois agendamentos no mesmo horário e data na mesma propriedade.
- Coverage de 98%