diff --git a/api-v3/src/inspection-visits/field-findings.service.ts b/api-v3/src/inspection-visits/field-findings.service.ts index a1ef657..1b2ec7e 100644 --- a/api-v3/src/inspection-visits/field-findings.service.ts +++ b/api-v3/src/inspection-visits/field-findings.service.ts @@ -265,13 +265,14 @@ export class FieldFindingsService { message: 'Registro de Inventario no encontrado', }); } - if (!['instalacion', 'subinstalacion'].includes(String(row.assetTypeCode).toLowerCase())) { + const assetTypeCode = String(row.assetTypeCode).toLowerCase(); + if (!['yacimiento', 'instalacion', 'subinstalacion'].includes(assetTypeCode)) { throw new BadRequestException({ - code: 'FIELD_FINDING_TECHNICAL_LEVEL_REQUIRED', - message: 'Los Hallazgos se registran sobre una Instalación o Subinstalación, no sobre Área/Yacimiento', + code: 'FIELD_FINDING_TARGET_LEVEL_INVALID', + message: 'Los Hallazgos pueden registrarse sobre Yacimiento, Instalación o Subinstalación', }); } - if (!row.inventoryFamilyId) { + if (assetTypeCode !== 'yacimiento' && !row.inventoryFamilyId) { throw new ConflictException({ code: 'FIELD_FINDING_FAMILY_REQUIRED', message: 'La Instalación/Subinstalación debe tener una clasificación técnica antes de registrar Hallazgos',