diff --git a/frontend/src/lib/api.ts b/frontend/src/lib/api.ts index b5b8116f..00872354 100644 --- a/frontend/src/lib/api.ts +++ b/frontend/src/lib/api.ts @@ -365,7 +365,27 @@ async function fetchApi( "SERVIDOR FTP": "ftp_server", "USUARIO FTP": "ftp_user", "CLAVE ACCESO FTP": "ftp_password", - "DIRECTORIO FTP": "ftp_directory" + "DIRECTORIO FTP": "ftp_directory", + // Vehicles + CLAVE: "vehicle_key", + "CLAVE ACE": "ace_vehicle_key", // Fallback for vehicles + "CLAVE TRANSPORTE": "transporter_key", + VIN: "series", + "TIPO TRANSPORTE": "transport_type", + "CODIGO DE ENTIDAD": "entity_code", + TRANSPONDEDOR: "transponder_number", + "NUMERO DOT": "dot_number", + PLACAS: "plate_number", + PRECINTO: "seal", + "EMPRESA ASEGURADORA": "insurance_company_name", + "NUM. ASEGURADORA": "insurance_number", + "MONTO ASEGURADO": "insurance_amount", + "FECHA DE ASEGURADORA": "insurance_date", + // Trailers + "NUMERO TRAILER": "trailer_number", + "TIPO TRAILER": "trailer_type_key", + "CODIGO ENTIDAD": "entity_code", + "CLAVE CONTENEDOR": "container_key" }; const normalizedErrors = d.errors.map((err) => ({ diff --git a/frontend/src/lib/components/dashboard/transportation/vehicles/create-edit-dialog.svelte b/frontend/src/lib/components/dashboard/transportation/vehicles/create-edit-dialog.svelte index 9ddbdd2e..17bc0ce5 100644 --- a/frontend/src/lib/components/dashboard/transportation/vehicles/create-edit-dialog.svelte +++ b/frontend/src/lib/components/dashboard/transportation/vehicles/create-edit-dialog.svelte @@ -196,6 +196,10 @@ throw new Error(tv('vehicle_key_required')); } + if (!isEdit && !formData.entity_code) { + throw new Error('El Código de Entidad es obligatorio para nuevos vehículos'); + } + let response; if (isEdit && item) { response = await vehiclesApi.update(item.vehicle_key, formData, companyId); @@ -204,9 +208,9 @@ } if (response.error) { - const ve = (response as { validationErrors?: { msg?: string }[] }).validationErrors; + const ve = response.validationErrors; if (ve?.length) { - throw new Error(ve.map((e) => e.msg).join(' · ')); + throw new Error(ve.map((e) => e.message).join(' · ')); } throw new Error(response.error); } @@ -372,7 +376,7 @@
- + {ENTITY_OPTS.find((o) => o.value === (formData.entity_code || ''))?.label ??