Esta é uma API construída com Node.js, Express e TypeORM para gerenciar apartamentos e veículos associados. A API permite criar, atualizar, excluir e listar apartamentos e veículos, com regras de negócios específicas para validação de dados.
Pré-requisitos Node.js (versão 14 ou superior) PostgreSQL Yarn
git clone
yarn install
TYPEORM_CONNECTION=postgres
TYPEORM_HOST=localhost
TYPEORM_USERNAME=seu_usuario
TYPEORM_PASSWORD=sua_senha
TYPEORM_DATABASE=nome_do_banco
TYPEORM_PORT=5432
TYPEORM_MIGRATIONS=src/database/migrations/*.ts
TYPEORM_MIGRATIONS_DIR=src/database/migrations
yarn typeorm migration:run -d src/data-source.ts
yarn dev
{
"block": 1,
"apartmentNumber": 101,
"resident": "John Doe",
"phone": "12345678901",
"email": "[email protected]"
}
{
"block": 1,
"apartmentNumber": 101,
"resident": "John Doe",
"phone": "12345678901",
"email": "[email protected]"
}
{
"brand": "Toyota",
"model": "Corolla",
"color": "Blue",
"plate": "AAA1234",
"apartment_id": 1
}
{
"brand": "Toyota",
"model": "Corolla",
"color": "Blue",
"plate": "AAA1234",
"apartment_id": 1
}
Cada apartamento pode ter no máximo um veículo, exceto apartamentos nos andares 10, 11 e 12, que podem ter até dois veículos. A placa do veículo deve seguir o formato AAA0000 ou AAA0A00 e ser única. O número de telefone deve conter exatamente 11 dígitos. O email deve seguir o formato padrão de email (contendo "@").