# Implantação 002 - CRUDs + Segurança + Rollback

Data: 2026-01-28

## O que foi feito
- Criado processo de versão/rollback com scripts de snapshot e restore.
- Implementado módulo de professores (model, migration, controller, views, routes).
- Adicionadas máscaras/validações (CPF, CNPJ, CEP, telefone) nos formulários e no backend.
- Ajustadas métricas no dashboard para incluir professores.
- Adicionado seed inicial (escola, turma, aluno, matrícula, professor).

## Alterações principais
- Rotas de `professores` agora usam resource controller.
- Dashboard mostra contadores reais.
- Seed cria dados base para iniciar testes.

## Arquivos alterados/criados
- `versao/README.md`
- `versao/backups/` (diretório)
- `scripts/rollback_snapshot.sh`
- `scripts/rollback_restore.sh`
- `database/migrations/2026_01_28_115536_create_teachers_table.php`
- `app/Models/Teacher.php`
- `app/Http/Controllers/TeacherController.php`
- `resources/views/pages/teachers/index.blade.php`
- `resources/views/pages/teachers/create.blade.php`
- `resources/views/pages/teachers/edit.blade.php`
- `routes/web.php`
- `database/seeders/DatabaseSeeder.php`
- `app/Http/Controllers/DashboardController.php`
- `resources/views/pages/dashboard/index.blade.php`
- `app/Http/Controllers/SchoolController.php`
- `app/Http/Controllers/StudentController.php`
- `resources/views/pages/schools/create.blade.php`
- `resources/views/pages/schools/edit.blade.php`
- `resources/views/pages/students/create.blade.php`
- `resources/views/pages/students/edit.blade.php`

## Comandos executados/recomendados
- `php8.4 artisan migrate --force`
- `php8.4 artisan db:seed --force`

## Rollback
1) Criar snapshot antes de mudanças:
   - `sudo /var/www/html/escolar/scripts/rollback_snapshot.sh`
2) Restaurar:
   - `sudo /var/www/html/escolar/scripts/rollback_restore.sh <timestamp>`

Observação: os scripts usam credenciais do `.env`.
