# Seeder API

[![Node.js](https://img.shields.io/badge/Node.js-20-339933?style=flat-square&logo=node.js)](https://nodejs.org/)
[![PostgreSQL](https://img.shields.io/badge/PostgreSQL-16-336791?style=flat-square&logo=postgresql)](https://postgresql.org/)

Microserviço para popular o banco de dados com dados realistas de teste.

---

## 📊 Dados Gerados

| Entidade | Quantidade | Descrição |
|----------|------------|-----------|
| **SuperAdmin** | 1 | Usuário administrador do sistema |
| **Empresas** | 10 | Empresas reais (Toyota, Honda, etc.) |
| **Admins/Recruiters** | 8 | Usuários de empresas |
| **Candidatos** | 30 | Job seekers de várias nacionalidades |
| **Vagas** | 50 | Vagas realistas com requisitos |
| **Candidaturas** | 20 | Aplicações de exemplo |
| **Prefeituras** | 47 | Todas as prefeituras japonesas |
| **Cidades** | ~50 | Cidades de Aichi e Tokyo |

---

## 🚀 Uso

### Instalação

```bash
cd seeder-api
npm install
```

### Configuração

Crie um `.env` baseado no `.env.example`:

```env
DB_HOST=localhost
DB_PORT=5432
DB_USER=postgres
DB_PASSWORD=yourpassword
DB_NAME=gohorsejobs
```

### Comandos

| Comando | Descrição |
|---------|-----------|
| `npm run seed` | Popula todas as tabelas |
| `npm run seed:reset` | Limpa e repopula tudo |
| `npm run seed:users` | Apenas usuários |
| `npm run seed:companies` | Apenas empresas |
| `npm run seed:jobs` | Apenas vagas |

---

## 🔑 Credenciais Geradas

### SuperAdmin
- **Login**: `superadmin`
- **Senha**: `Admin@2025!`

### Admin de Empresa
- **Login**: `takeshi_yamamoto`
- **Senha**: `Takeshi@2025`

### Recrutador
- **Login**: `maria_santos`
- **Senha**: `Maria@2025`

### Candidato (todos usam mesma senha)
- **Login**: `paulo_santos`
- **Senha**: `User@2025`

---

## 📁 Estrutura

```
src/
├── index.js          # Entrypoint principal
├── config.js         # Configuração de BD
└── seeders/
    ├── users.js      # Seed de usuários
    ├── companies.js  # Seed de empresas
    ├── jobs.js       # Seed de vagas
    ├── cities.js     # Seed de cidades
    └── applications.js # Seed de candidaturas
```

---

## ⚠️ Importante

- Execute as **migrations** antes do seed
- Use apenas em ambiente de **desenvolvimento**
- Senhas padrão são **apenas para testes**
