Ir al contenido principal

Guardar documento (1) - [saveInternalDocuments]

🧾 Descripción

Registra internamente un documento aceptado o gestionado por un usuario dentro de una terminal específica.

Este servicio guarda un log en la tabla documentos_internos, permitiendo rastrear:

  • Qué usuario aceptó o gestionó un documento.

  • Desde qué terminal lo realizó.

  • Qué tipo de documento fue.

  • En qué fecha y hora se registró.

Es utilizado para auditoría y trazabilidad dentro del sistema.


🚀 Endpoint

POST /save-internal-documents


📥 Parámetros (Request Body)

{ "usuario": "string", "terminal": "string", "tipo": "string" }

Campos:

CampoTipoRequeridoDescripción
usuariostring✔️ SíID o username del usuario que realiza la acción
terminalstring✔️ SíCódigo de la terminal donde se ejecuta la acción
tipostring❌ NoTipo de documento o acción registrada

🔐 Seguridad

No requiere token de ERP.
Acceso interno del backend usando conexión directa a la base de datos mysql2.


🧠 Flujo del Servicio (resumen)

  1. Valida que usuario y terminal existan en la solicitud.

  2. Establece zona horaria America/Lima.

  3. Inserta un registro en la tabla documentos_internos con:

    • usuario

    • terminal

    • tipo

    • fecha actual

  4. Si el registro falla, retorna un error.

  5. Si todo es exitoso, responde confirmación de inserción.


🗃 Base de Datos Utilizada

Tabla: documentos_internos (BD: mysql2)

CampoTipoDescripción
usuariovarcharUsuario que registra
terminalvarcharTerminal desde donde registra
tipovarcharTipo de documento
fechadatetimeFecha y hora del registro

🔎 Pseudocódigo

if usuario vacío → retornar error “te olvidaste el usuario” if terminal vacío → retornar error "te olvidaste la terminal" fecha = now() insert into documentos_internos (usuario, terminal, tipo, fecha) if insert falla → retornar "Ocurrió un error" else → retornar "Insertado con éxito"

📤 Respuestas del Servicio

200 – Inserción exitosa

{ "valor": true, "msg": "Insertado con éxito" }

❗ Error: Falta usuario

{ "valor": false, "msg": "te olvidaste el usuario" }

❗ Error: Falta terminal

{ "valor": false, "msg": "te olvidaste la terminal" }

❗ Error al insertar

{ "valor": false, "msg": "Ocurrio un error" }

📚 Ejemplo completo de Request

{ "usuario": "user@example.com", "terminal": "236", "tipo": "descarga_politicas" }