Hermes Delivery Express

Configuracion de guias

La seccion visual de plantillas fue retirada. La etiqueta de envio se configura desde codigo fuente para evitar cambios accidentales en produccion.

Archivos principales

PropositoArchivo
Plantilla base, medidas, textos, posiciones y HTML termicobackend-java/src/main/java/com/hermesexpress/backend/service/GuideTemplateService.java
Motor PDF, QR, textos, bloques COD y vista de impresionbackend-java/src/main/java/com/hermesexpress/backend/service/GuidePdfService.java
Descarga e impresion de guiasbackend-java/src/main/java/com/hermesexpress/backend/web/GuideController.java

Fuente oficial actual

La guia usa GuideTemplateService.defaultConfig(). El metodo activeConfig() devuelve esa configuracion del codigo fuente.

Las plantillas guardadas antiguamente en base de datos ya no controlan la etiqueta de produccion.

Estructura de configuracion

page

Define el tamano del PDF. width: 288 equivale a 4 pulgadas de ancho.

"page": { "width": 288, "height": 540 }

colors

Para impresora termica se recomienda negro fuerte y fondo blanco.

"ink": [0, 0, 0],
"line": [0, 0, 0],
"white": [1, 1, 1]

elements

Cada elemento controla posicion, visibilidad, ancho, alto, tamano de texto y limites de lineas.

"deliveryAddress": {
  "visible": true,
  "label": "Direccion de entrega",
  "x": 12,
  "y": 318,
  "width": 264,
  "maxChars": 52,
  "maxLines": 6,
  "valueSize": 9.4
}

Elementos clave

ElementoUso
serviceBadge / serviceCuadro negro STD o COD.
trackingCodeNumero principal de guia.
qrCodigo QR de escaneo operativo.
origin / originPhoneRemitente y telefono.
recipient / recipientPhoneDestinatario y telefono destino.
deliveryAddressDireccion de entrega limpia, sin GPS impreso.
contentContenido del paquete.
codBox, cod, codMethod, codAccountBloque de cobro COD y datos bancarios.
footerContacto de Hermes.

Variables HTML disponibles

El HTML de impresion de defaultHtml() puede usar variables reemplazadas por GuidePdfService.guidePlaceholders().

VariableValor
{{guideNumber}}Numero de guia.
{{serviceLabel}}STD o COD.
{{senderName}} / {{senderPhone}}Comercio remitente.
{{recipientName}} / {{recipientPhone}}Destinatario.
{{recipientAddress}}Direccion limpia.
{{reference}}Referencia del cliente.
{{deliveryInstruction}}Instrucciones de entrega.
{{content}}Contenido del paquete.
{{codBlock}}Bloque completo COD, solo si aplica.
{{qrDataUri}}Imagen QR base64.

Proceso seguro de cambio

  1. Editar GuideTemplateService.java.
  2. Si cambia QR, COD, limpieza de GPS o PDF, revisar GuidePdfService.java.
  3. Compilar backend.
  4. Crear guia estandar y COD de prueba.
  5. Descargar e imprimir para confirmar que ambos formatos coinciden.
cd C:\Users\Usuario\Documents\GitHub\hermes-express-portal\backend-java
$env:JAVA_HOME='C:\Users\Usuario\Documents\New project\.codex-jdk21\jdk-21.0.11+10'
$env:Path="$env:JAVA_HOME\bin;$env:Path"
.\mvnw.cmd -q -DskipTests package

Checklist de impresion termica