Hakan Sevimoğlu Hakan SevimoğluFreelance-Entwickler · 18 J.
Industrie · Arbeitsschutz · Kiosk

Brisa PSA-Lager: Eine Anspruchslogik für Automaten und Lagerausgabe

Bei Brisa wird persönliche Schutzausrüstung (PSA) sowohl über Ausgabeautomaten als auch über das Lagerpersonal ausgegeben. Diese Fallstudie zeigt technisch, wie beide Kanäle auf eine Datenbank und ein Regelwerk gebracht wurden.

KurzantwortDas Brisa PSA-Lager ist ein von Hakan Sevimoğlu mit PHP und MySQL entwickeltes, kartenbasiertes PSA-Ausgabesystem im internen Werksnetz. Mitarbeitende scannen ihre Karte am Touch-Kiosk, das System berechnet Ansprüche pro Abteilung und Person und Periode, holt die Freigabe von der zentralen Automaten-API und bucht den Bestand ab. Es läuft in zwei Installationen: Zentrale und Werk Aksaray.

Verfasst von Hakan Sevimoğlu · Zuletzt aktualisiert:

Projektkontext

In den Produktionsbereichen von Brisa wurde PSA über Arbeitsschutzautomaten ausgegeben. Sperrige Artikel, Sicherheitsschuhe und Arbeitskleidung in Größen sowie Sammelausgaben zu Schichtbeginn passten nicht in die Automaten und liefen ohne Anspruchsprüfung über das Lager. Bei Audits ließ sich nicht belegen, wer was erhalten hatte.

Ziel war, die Prüfung des Automaten auf den Bildschirm des Lagerpersonals zu bringen und beide Kanäle in einem Anspruchskonto zusammenzuführen.

Architektur und Datenfluss

  1. Kiosk: eine Vollbild-Touch-Oberfläche liest die Personalnummer vom Kartenleser.
  2. Anspruchsprüfung: Kartensperre prüfen, Limits von Person und Abteilung laden, Verbrauch der laufenden Periode berechnen.
  3. Warenkorb: Mengen über dem Restanspruch lassen sich nicht hinzufügen; der Server prüft erneut.
  4. Freigabe: die Anfrage geht an die zentrale Automaten-API, Antwort APPROVED, DENIED oder FAIL.
  5. Buchung: freigegebene Ausgaben werden mit Person, Artikel, Fach, Gerät und Zeit gespeichert, der Bestand sinkt.

Das Admin-Panel läuft als JavaScript-SPA auf einem PHP-Router und teilt das MySQL-Schema mit der CodeIgniter-basierten Automatenverwaltung.

Technische Herausforderungen und Lösungen

Periodenbasierte Anspruchslogik

Ansprüche gelten pro Abteilung und Person täglich, wöchentlich, monatlich, jährlich oder zweijährlich. Die Zweijahresperiode ist ein rollierendes 24-Monats-Fenster. Dieselbe Periodenlogik wird im Admin-Panel, in der Kiosk-Übersicht und bei der zentralen Freigabe identisch berechnet, sonst entscheiden Panel und Automat unterschiedlich.

Unbegrenzter Anspruch versus Sperre

Das Berechtigungsflag bedeutete „unbegrenzter Anspruch“, nicht „inaktiv“; die einzige echte Sperre war die Kartensperre. Kiosk und Panel wurden darauf ausgerichtet.

Zwei Werke, eine Codebasis

Zentrale und Aksaray nutzen dasselbe Produkt, Aksaray filtert jedoch nach Abteilungsnamen und sieht nur eigenes Personal, auch als Administrator. Neue Funktionen werden zwischen beiden Installationen portiert.

Techniker-Berechtigungen und Übergabeprotokolle

Techniker sehen nur zugewiesene Automaten und Abteilungen. Unterschriebene Übergabeprotokolle werden als PDF oder Bild an der Personalakte hinterlegt.

Das entstandene System

Das Lagerpersonal gibt aus, die Entscheidung trifft das System: keine Ausgabe ohne Karte, kein Artikel ohne Anspruch, jede Ausgabe protokolliert. Da Automat und Lager dieselben Tabellen nutzen, kann niemand den am Automaten aufgebrauchten Anspruch im Lager erneut nutzen.

Technologie-Stack

PHPMySQLPDOCodeIgniterJavaScript SPAKart okuyucuDokunmatik kioskREST API

Zugehöriges Produkt

Zur Produktseite: Brisa PSA-Lager

Häufige Fragen

Braucht das System Internet?

Nein. Es läuft auf einem Server im Werksnetz; Kiosk, Panel und Freigabedienst kommunizieren intern.

Sind Automatensoftware und PSA-Lager getrennte Programme?

Nein. Beide nutzen dieselbe MySQL-Datenbank und dieselben Anspruchstabellen.

Lässt sich das System in einem anderen Werk einsetzen?

Ja. Werksfilter und Perioden sind Konfiguration; bei mehreren Werken verwaltet jedes Werk sein Personal, die Zentrale sieht alle.

Weitere Fallstudien

WhatsAppAngebot