Saltar al contenido principal

Integración y Funcionamiento con DocGes

El gestor documental DocGes organiza los archivos de BaseGes de forma jerárquica y los vincula a entidades de gestión (clientes, obras, facturas, presupuestos, partes de trabajo).

Requisito de Licenciamiento

Para poder utilizar el módulo de adjuntos, la instalación de BaseGes debe disponer del servicio DocGes contratado, configurado y activo. En caso contrario, los endpoints responderán con error de servicio no disponible.


1. Conceptos Fundamentales de DocGes​

  • Categoría Raíz ($): Es el nodo raíz del almacén documental de la empresa. Si una operación de subida no especifica categoriaSid, el documento se guarda automáticamente en la raíz.
  • Ruta (Ruta): Cada documento almacena su ruta jerárquica completa en formato tipo Unix (por ejemplo: /Obras/2026/OBRA-101/Planos).
  • Migas de Pan (Breadcrumbs): Lista ordenada de las categorías predecesoras desde la raíz hasta la carpeta final, incluyendo su Id, Sid y Nombre.
  • Relación de Gestión (RelacionGestion): Clave de negocio del ERP que vincula el documento con una entidad (por ejemplo: código de cliente, número de factura o código de obra).
  • Propiedad de Gestión (PropiedadGestion): Metadato extendido para clasificar el tipo de archivo (p. ej. Contrato Firmado, Plano Técnico, Certificado).

2. Descarga de Archivos (GET /api/attachments/{sid}/download)​

Para descargar el binario de un archivo físico almacenado en DocGes:

  • Parámetro de ruta: sid (Identificador alfanumérico único del documento).
  • Respuesta del servidor: Stream binario con la cabecera Content-Type correspondiente al tipo MIME (application/pdf, image/png, etc.) y Content-Disposition con el nombre original del archivo.

3. Subida de Archivos (POST /api/attachments)​

La subida se realiza mediante una petición con codificación multipart/form-data:

Parámetros del Formulario​

  • file (Obligatorio): Archivo binario a subir.
  • nombre (Opcional): Nombre que recibirá el documento en DocGes. Si se omite, se utiliza el nombre original del archivo (file.FileName).
  • categoriaSid (Opcional): SID de la carpeta destino. Si se omite, se deposita en la raíz ($).
  • relacionGestion (Opcional): Código de la entidad vinculada (ej. número de albarán o factura).
Integridad Automática

La API de BaseGes calcula de forma transparente el hash criptográfico SHA-1 en Base64 (HashContenido) requerido por el repositorio de DocGes antes de su almacenamiento, garantizando la integridad de cada archivo.

Ejemplo de Petición cURL​

curl -X POST "http://localhost:5000/api/attachments" \
-H "X-Api-Key: tu-api-key" \
-F "file=@/ruta/plano-instalacion.pdf" \
-F "nombre=Plano Distribución Baja Tensión" \
-F "relacionGestion=OBRA-2026-001"