feat: add dd.MM.yyyy date formatting, default label number, and improve variable padding safety in label rendering
Build and Push Multi-Platform Images / build-and-push (push) Successful in 31s

This commit is contained in:
2026-05-08 16:37:15 +02:00
parent e4d5e3457b
commit ebe6f48dd9
2 changed files with 5 additions and 2 deletions
@@ -54,6 +54,7 @@ export class LabelPrintAgentService {
const raw = fieldValues[field.name]; // erwartet YYYY-MM-DD
const parts = raw.split('-');
if (parts.length === 3) {
vars[field.name] = `${parts[2]}.${parts[1]}.${parts[0]}`; // dd.MM.yyyy
vars[`${field.name}.year`] = parts[0];
vars[`${field.name}.month`] = parts[1];
vars[`${field.name}.day`] = parts[2];
@@ -165,6 +166,7 @@ export class LabelPrintAgentService {
if (field.type === 'date' && fieldValues[field.name]) {
const parts = fieldValues[field.name].split('-');
if (parts.length === 3) {
vars[field.name] = `${parts[2]}.${parts[1]}.${parts[0]}`; // dd.MM.yyyy
vars[`${field.name}.year`] = parts[0];
vars[`${field.name}.month`] = parts[1];
vars[`${field.name}.day`] = parts[2];
@@ -179,6 +181,7 @@ export class LabelPrintAgentService {
this.logger.warn(`GET-URL fehlgeschlagen (${url}): ${err.message}`);
}
}
if (!('number' in vars)) vars['number'] = '1';
return this.renderer.render(
template.LabelLayout,
@@ -19,8 +19,8 @@ function applyVars(template: string, vars: Record<string, string>): string {
if (colonIdx !== -1) {
const varName = key.slice(0, colonIdx);
const width = parseInt(key.slice(colonIdx + 1), 10);
if (!isNaN(width) && varName in vars) {
return vars[varName].padStart(width, '0');
if (!isNaN(width)) {
return (vars[varName] ?? '').padStart(width, '0');
}
}
return vars[key] ?? `{${key}}`;