mirror of
https://github.com/Sea-Haven-Industries/shoc-backend.git
synced 2026-10-01 15:43:14 +00:00
59 lines
1.7 KiB
Markdown
59 lines
1.7 KiB
Markdown
|
|
# Migration Dry-Run Report — Phase 0
|
||
|
|
|
||
|
|
**Migration:** `20260624163145_Phase0_DomainFoundation`
|
||
|
|
**Status:** Pronto para execução em staging
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 1. Procedimento
|
||
|
|
|
||
|
|
1. Restore backup produção → staging espelho
|
||
|
|
2. Snapshot pré-migration:
|
||
|
|
```sql
|
||
|
|
SELECT Status, COUNT(*) FROM workOrders GROUP BY Status;
|
||
|
|
SELECT COUNT(*) AS Total FROM workOrders;
|
||
|
|
```
|
||
|
|
3. Executar:
|
||
|
|
```powershell
|
||
|
|
dotnet ef database update --project Data.SeaHavenIndustries --startup-project Api.SeaHavenIndustries
|
||
|
|
```
|
||
|
|
4. Validar pós-migration:
|
||
|
|
```sql
|
||
|
|
SELECT COUNT(*) FROM workOrders WHERE LegacyStatus IS NOT NULL;
|
||
|
|
SELECT LifecycleStatus, COUNT(*) FROM workOrders GROUP BY LifecycleStatus;
|
||
|
|
SELECT COUNT(*) FROM workOrders WHERE PrimaryDispatchId IS NOT NULL;
|
||
|
|
```
|
||
|
|
5. Smoke Blazor + API legado + Sync sample
|
||
|
|
6. Rollback (se falha):
|
||
|
|
```powershell
|
||
|
|
dotnet ef database update 20260417195316_AddDispatchVerification --project Data.SeaHavenIndustries --startup-project Api.SeaHavenIndustries
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 2. Data scripts incluídos na migration
|
||
|
|
|
||
|
|
- `LegacyStatus` ← cópia de `Status`
|
||
|
|
- `LifecycleStatus` ← mapeamento legado (Open→Incomplete, etc.)
|
||
|
|
- `PrimaryDispatchId` ← dispatch mais recente por WO
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 3. Resultados (preencher em staging)
|
||
|
|
|
||
|
|
| Métrica | Antes | Depois |
|
||
|
|
|---------|-------|--------|
|
||
|
|
| Total WOs | | |
|
||
|
|
| Com LegacyStatus | | |
|
||
|
|
| Com LifecycleStatus | | |
|
||
|
|
| Com PrimaryDispatchId | | |
|
||
|
|
| Rollback testado | | Sim/Não |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 4. Notas
|
||
|
|
|
||
|
|
A migration inclui reconciliação de drift em `Locations`, `Regions`, `Departments` detectada pelo EF — revisar impacto em staging antes de produção.
|
||
|
|
|
||
|
|
**WO# normalização 11 dígitos:** documentada para Fase 2; não executada nesta migration.
|