Centurio System & Module Documentation
🏛️ Platform Architecture 🔑 Login
All Modules / core_platform / Drucker & Geräte
📘

Drucker & Geräte

printbridge core_platform 🛡️ RLS Protected

Drucker & Geräte — aus Code abgeleitete Prozess- und API-Dokumentation.

Fachliche Bestimmung: Plattform- und Basisinfrastruktur: Drucker & Geräte — aus Code abgeleitete Prozess- und API-Dokumentation. Erfasst alle zugehörigen Geschäftsdaten, Zustandsmodelle, Automationskaskaden und Schnittstellen zur nahtlosen Einbindung in die unternehmensweiten Wertschöpfungsprozesse.

⚡ Workflows & Lifecycles

Druckserver-Bridge & Direkter Belegdruck hardware_print_spooling

Netzwerkbasierte Weiterleitung von Belegdruckaufträgen (Lieferscheine, Versandetiketten, Werkstattzettel) an physische Drucker.

sequenceDiagram autonumber actor Worker as Lager-/Versandmitarbeiter participant ERP as Centurio ERP Belegservice participant Spooler as PrintBridge Cloud Queue participant LocalBridge as Lokaler PrintBridge Client participant Printer as Physischer Etikettendrucker Worker->>ERP: Klick: "Versandetikett drucken" ERP->>Spooler: enqueue_job(printer="zebra_shipping", payload=ZPL) LocalBridge->>Spooler: poll_pending_jobs(token) Spooler-->>LocalBridge: Job #4912 (ZPL-Rohdaten) LocalBridge->>Printer: RAW Socket Druckdaten übermitteln Printer-->>LocalBridge: Druck erfolgreich abgeschlossen LocalBridge->>Spooler: ack_job(id=4912, status="SUCCESS")
1. PRINT_TRIGGER
Druckauftrag auslösen
Benutzer oder Kaskaden-Event fordert Druck eines Belegs an (z.B. Paketaufkleber bei Warenausgang).
Aktionen: PDF/ZPL rendern, Zieldrucker wählen
2. SPOOL_QUEUE
Spooling & Queueing
Einstellen des Druckauftrags in die tenant-isolierte Druckwarteschlange.
Aktionen: Druckjob persistieren, Priorität vergeben
3. AGENT_POLL
PrintBridge-Zustellung
Lokaler PrintBridge-Agent im Firmennetzwerk holt anstehende Druckjobs verschlüsselt ab.
Aktionen: TLS-Abruf, Job-Validierung
4. PRINT_ACK
Hardware-Ausgabe & Quittung
Ausgabe auf Thermotransfer- oder Laserdrucker mit Rückmeldung des Druckstatus.
Aktionen: Druckausgabe, Status: COMPLETED

⚙️ Fachprozesse & Capabilities (System-Fachlogik)

Registrierte Fachoperationen und System-Capabilities dieses Moduls zur Steuerung von Workflows, Kaskaden und KI-Agenten.

Gesamt: 0
Keine modul-spezifischen Capabilities registriert. Das Modul nutzt Standard-CRUD und Kern-APIs.

🧠 Fachprozess-Erzählung & Dual Knowledge Architektur

Synthese aus der ideologischen Blaupause (Meta-Fachlogik / Soll), der faktischen System-Implementierung (System-Fachlogik / Ist) und No-Code Customizing für KI-Consultants.

Dual Knowledge Layer
📖

Der durchgängige Businessprozess im Detail (End-to-End Fließtext-Erzählung)

Der funktionale Ablauf von Drucker & Geräte in der Plattform-Architektur

Das Modul printbridge erbringt zentrale Infrastruktur- und Steuerungsdienste im Monolithen. Jeder Aufruf durchläuft die zweistufige Sicherheitsarchitektur: Zunächst verifiziert der Session-Guard die Identität des Benutzers, woraufhin die PostgreSQL Row-Level-Security (RLS) aktiviert wird. Dadurch ist garantiert, dass Datenzugriffe mathematisch und physisch ausschließlich auf den authentifizierten tenant_id-Kontext beschränkt bleiben.

Mutationen und administrative Aktionen werden über transaktionale Services ausgeführt. Bei zustandsverändernden Operationen schreibt das System simultan in die betriebliche Zieltabelle und in die transaktionale Outbox. Asynchrone Worker greifen diese Signale ab und kaskadieren Ereignisse an nachgelagerte Module, ohne den synchronen HTTP-Pfad zu blockieren. Jeder Zugriff wird unveränderbar im Audit-Trail protokolliert.

🏛️

Meta-Fachlogik: Ideologische Blaupause, Soll-Weltbild & Normen

Meta-Fachlogik: Sicherheits- und Plattform-Architektur

Basiert auf den Standards ISO/IEC 27001:2022 (Informationssicherheits-Managementsysteme), den BSI IT-Grundschutz-Bausteinen (APP.3.1 Webanwendungen, SYS.1.1 Allgemeiner Server) und Art. 32 DSGVO.

  • Mandantentrennung als Primärinvariante: Keine Mandantendaten dürfen jemals ohne tenant_id-Filter geladen oder mutiert werden. Das Soll-Modell verlangt die Durchsetzung auf Datenbankebene via PostgreSQL RLS.

  • Unveränderbarkeit von Sicherheitsereignissen: Protokolldateien, Logins, Berechtigungsänderungen und Konfigurationsmutationen müssen revisionssicher und schreibgeschützt festgeschrieben werden.

Normbezug für printbridge

Prüfkatalog Standards-Registry v2026.10.1. Dieser Abschnitt ordnet Prüfreferenzen zu und stellt nicht fest, dass das Modul eine Norm einhält; keine Kataloganforderung ist als PASS bewertet.

Im Prüfkatalog ist keine modulspezifische Anforderung und keine primäre Prüfreferenz hinterlegt.

Im Auditauftrag zusätzlich genannt und nicht im Prüfkatalog v2026.10.1: IPP, IPP Everywhere. Dafür gibt es hier keine Klausel und keine Aussage, dass eine Vorgabe eingehalten wird.

Plattformweite Katalogwerke mit Geltungsbereich all (unter anderem WCAG 2.2, EN 301 549 V4.1.1, ISO 9241-110:2020, ISO 9241-210:2019, ISO/IEC 25010:2023, ISO 9001:2026, ISO/IEC 27001:2022, APQC PCF 8.0, DSGVO, EU AI Act) umfassen dieses Modul mit. Wo der Volltext fehlt, bleibt der Zugang ohne Quelle, lizenzpflichtig oder nur als öffentliche Zusammenfassung gekennzeichnet. Auch diese Nennung weist keine eingehaltene Vorgabe nach.

⚙️

Systemische Fachlogik: Faktische Umsetzung in Centurio ERP & Capabilities

Systemische Fachlogik: Die faktische Umsetzung von Drucker & Geräte

In Centurio ERP wird printbridge als modularer Monolith-Baustein unter app.modules.printbridge geführt. Die Autorisierung erfolgt über die zentrale RBAC-Engine mit Berechtigungs-Prüfung gegen Rollen und Berechtigungen. Datenänderungen lösen Outbox-Events aus, die über den PostgreSQL events-Bus verteilt werden. Idempotente Requests verhindern Replay-Angriffe und versehentliche Mehrfachausführungen.

🤖

KI-Consultant Leitfaden: Customizing- & No-Code-Konzept (Soll-Ist-Synthese)

AI Solution Architect Blueprint

KI-Consultant Blueprint: Customizing & No-Code Leitfaden für Drucker & Geräte

  • No-Code Datenmodell-Erweiterung: Bei Bedarf können kundenspezifische Zusatzfelder im No-Code Customizing Studio angelegt werden.

  • Workflow-Integration: Administrative Ereignisse können als Trigger in der Canvas No-Code DAG Engine genutzt werden.

  • Sicherheitsregeln: Vor kritischen Systemänderungen sind Human-in-the-Loop Freigabegates einzurichten.

📚 Operative Prozessbegriffe & Transaktionsschnittstellen

Zentrale Fachbegriffe im Prozesszusammenhang (Operatives Modell)
Mandantenisolation (RLS)
PostgreSQL Row-Level-Security zur physischen und logischen Trennung aller Kundendaten auf Datenbankebene.
Zweistufige Authentifizierung
Strikte Trennung zwischen globalem Benutzerkonto und mandantenbezogener Rollenzuweisung (RBAC).
Transaktionale Outbox
Entkoppeltes Event-Publishing zur Vermeidung von Distributed-Transaction-Inkonsistenzen.
Revisionssicherer Audit-Trail
Lückenlose Aufzeichnung aller datenverändernden Zugriffe für Compliance und Rechnungsprüfung.
📥 Eingänge & Trigger (Inputs)
  • Systemaufrufe über REST-API oder Web-Portal
  • Hintergrund-Worker und Cron-Jobs
  • Ereignisse über den Outbox-Eventbus
📤 Ausgänge & Arbeitsergebnisse (Outputs)
  • Ausführungs- und Protokolldaten
  • Audit-Events im Revisionsjournal
  • Veränderte Systemzustände
⚡ Kaskaden & Folgeprozesse (Cascades)
  • security_event -> admin_alert: Alarmierung bei verdächtigen Zugriffen
  • config_changed -> cache_invalidation: Sofortige Aktualisierung
🛡️ Nebenprozesse & Resilienz
  • Manuelle Ausnahmebehandlung durch berechtigte Sachbearbeiter
  • Revisionssichere Protokollierung im Audit-Trail
💡 No-Code Checkliste & Praxistipps
  • Rollen- und Berechtigungsstufen exakt an Mitarbeiteraufgaben anpassen
  • Sicherheitsrichtlinien für Passwörter und Sessions aktivieren

🗄️ Data Models & Fields

Keine dedizierten Tabellen für dieses Modul registriert.

🔌 Entry Points (UI & APIs)

Art Method Endpoint / Path Titel & Zweck Required Role
⚡ REST API DELETE /api/v1/bridge/print-bridges/{bridge_id}
delete_print_bridge
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API DELETE /api/v1/bridge/printers/{printer_id}
delete_printer
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API GET /api/v1/bridge/label-templates
list_label_templates
Semantic binding: inventory_only; mutation=False
printbridge
⚡ REST API GET /api/v1/bridge/print-bridges
list_print_bridges
Semantic binding: inventory_only; mutation=False
printbridge
⚡ REST API GET /api/v1/bridge/print-bridges/{bridge_id}/download-client
download_print_bridge_client
Semantic binding: inventory_only; mutation=False
printbridge
⚡ REST API GET /api/v1/bridge/print-jobs
list_print_jobs
Semantic binding: inventory_only; mutation=False
printbridge
⚡ REST API GET /api/v1/bridge/print-jobs/{job_id}/content
get_print_job_content
Semantic binding: inventory_only; mutation=False
printbridge
⚡ REST API GET /api/v1/bridge/printers
list_printers
Semantic binding: inventory_only; mutation=False
printbridge
⚡ REST API GET /api/v1/bridge/scan-bridges
list_scan_bridges
Semantic binding: inventory_only; mutation=False
printbridge
⚡ REST API GET /api/v1/bridge/scan-bridges/{bridge_id}/download-client
download_scan_bridge_client
Semantic binding: inventory_only; mutation=False
printbridge
⚡ REST API GET /api/v1/bridge/scan-imports
list_scan_imports
Semantic binding: inventory_only; mutation=False
printbridge
⚡ REST API GET /drucker
bridge_management_page
Semantic binding: inventory_only; mutation=False
printbridge
⚡ REST API PATCH /api/v1/bridge/printers/{printer_id}
update_printer
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API POST /api/v1/bridge/print-bridge/heartbeat
print_bridge_heartbeat
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API POST /api/v1/bridge/print-bridge/jobs/{job_id}/ack
print_bridge_ack
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API POST /api/v1/bridge/print-bridge/lease
print_bridge_lease
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API POST /api/v1/bridge/print-bridges
create_print_bridge
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API POST /api/v1/bridge/print-bridges/{bridge_id}/download-client
download_print_bridge_client_post
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API POST /api/v1/bridge/print-bridges/{bridge_id}/rotate-token
rotate_print_bridge_token
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API POST /api/v1/bridge/printers
create_printer
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API POST /api/v1/bridge/quick-print/location/{location_id}
quick_print_location
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API POST /api/v1/bridge/quick-print/product/{product_id}
quick_print_product
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API POST /api/v1/bridge/scan-bridge/heartbeat
scan_bridge_heartbeat
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API POST /api/v1/bridge/scan-bridge/upload
scan_bridge_upload
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API POST /api/v1/bridge/scan-bridges
create_scan_bridge
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API POST /drucker/bridges/package
provision_print_bridge_package
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API POST /drucker/bridges/{bridge_id}/rotate-package
rotate_print_bridge_package
Semantic binding: inventory_only; mutation=True
printbridge
⚡ REST API POST /drucker/scanners/package
provision_scan_bridge_package
Semantic binding: inventory_only; mutation=True
printbridge

🛡️ Regulatory & Compliance

Dieses Modul unterliegt folgenden gesetzlichen, regulatorischen und Revisionsstandards:

  • GoBD Nachvollziehbarkeit
  • Mandanten-Isolation (PostgreSQL RLS)