41 lines
2.2 KiB
Markdown
41 lines
2.2 KiB
Markdown
# D5.3.23.1 · Altas de campo y revisión de Inventarios
|
|
|
|
## Objetivo
|
|
|
|
Permitir que un inspector registre durante una inspección un elemento que no existe todavía en el Inventario, siga trabajando con ese registro provisional y deje la decisión definitiva para oficina.
|
|
|
|
## Flujo
|
|
|
|
1. Sólo un inspector autenticado desde la aplicación móvil puede generar un alta de campo.
|
|
2. La visita debe estar `IN_PROGRESS` y el inspector debe integrar el equipo asignado.
|
|
3. El elemento se crea como `DRAFT`, con origen `FIELD_SURVEY`, referencia a la visita y trazabilidad completa.
|
|
4. El elemento se incorpora inmediatamente a la visita y, si el Acta ya existe y sigue abierta, también al Acta para poder registrar Hallazgos sobre él.
|
|
5. En oficina, la bandeja **Inventarios → Altas de campo** permite:
|
|
- abrir y corregir la ficha;
|
|
- aprobarla, pasando a `VALIDATED`;
|
|
- conciliarla con un registro existente de la misma Empresa y Área;
|
|
- rechazarla.
|
|
6. Conciliar o rechazar nunca elimina el registro provisional: se archiva como `INACTIVE` para conservar las referencias históricas.
|
|
7. Actas y Hallazgos ya emitidos no cambian de `asset_id`; el vínculo con un registro existente se registra aparte mediante `matched_asset_id`.
|
|
|
|
## Validación mínima al aprobar
|
|
|
|
La ficha debe mantener como mínimo Empresa, Área, Tipo de elemento y Nombre/código. El esquema ya exige Nombre y Código; la aprobación agrega el control explícito de Empresa y Área.
|
|
|
|
## Seguridad
|
|
|
|
- Creación en campo: permiso `assets.create` + política de inspector móvil.
|
|
- Bandeja: `assets.read`.
|
|
- Aprobar, conciliar y rechazar: `assets.change_status`.
|
|
- No se agregan permisos nuevos ni se amplían roles en esta fase.
|
|
|
|
## Persistencia
|
|
|
|
Nueva tabla `asset_field_discoveries`, append-preserving, con estado `PENDING | APPROVED | MATCHED | REJECTED`, visita, inspector, decisión de oficina y eventual coincidencia.
|
|
|
|
SMTP no forma parte de esta fase y puede continuar sin configurar.
|
|
|
|
|
|
## Parche 23.1
|
|
El enlace del objeto provisional con `inspection_visit_assets` y `inspection_act_assets` se aisló en `FieldDiscoveryInspectionLinkService`, manteniendo `AssetsService` libre de escrituras directas sobre tablas de inspección y conservando el test arquitectónico de D5.3.14.
|