2026-05-26 16:52:08 +02:00
2026-05-18 21:14:04 +02:00
2026-05-18 21:14:04 +02:00
2026-05-19 20:22:18 +02:00
2026-05-26 16:52:08 +02:00
2026-05-19 20:22:18 +02:00
2026-05-18 21:14:04 +02:00
2026-05-26 16:52:08 +02:00
2026-05-19 22:02:49 +02:00
2026-05-18 21:14:04 +02:00
2026-05-18 21:14:04 +02:00

keyadmin

Voraussetzungen

  • Python 3.10 oder neuer

Installation

python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

Starten

python3 app.py

Die Anwendung ist danach unter http://127.0.0.1:5006 erreichbar.

Start mit Docker

docker compose up --build

Die Anwendung ist danach ebenfalls unter http://127.0.0.1:5006 erreichbar.

Funktionen

  • Anmeldung fuer Bearbeiter und Admins
  • Admin kann Bearbeiter und weitere Admins anlegen
  • Bearbeiter vergeben ihr Passwort bei der ersten Anmeldung selbst
  • Admin kann Passwort-Reset fuer Bearbeiter ausloesen
  • Admin kann vorhandene Bestandsdaten per CSV importieren
  • User anlegen
  • Ausgabe von Tuerchips, Parkkarten und Poolfahrzeugen
  • Rueckgabe von Tuerchips, Parkkarten und Poolfahrzeugen
  • Uebersicht mit Suche und letzten Bewegungen
  • Einfache Logdatei mit Datum, Medium und bearbeitendem Mitarbeiter
  • Anzeige der letzten Logeintraege im Webinterface
  • Bearbeiter wird auch in der Datenbankhistorie gespeichert
  • Doppelte Kennungen fuer Tuerchips und Parkkarten werden bei der Ausgabe verhindert

Datenhaltung

  • Die Daten werden lokal in inventory.db als SQLite-Datenbank gespeichert.
  • Die einfache Dateiprotokollierung wird in inventory.log geschrieben.

Anmeldung

  • Beim ersten Start wird automatisch ein Admin mit dem Benutzernamen admin angelegt.
  • Dieser Admin hat zunaechst kein Passwort und wird bei der ersten Anmeldung direkt zur Passwortvergabe gefuehrt.
  • Der Bearbeiter in der Historie und im Log ist immer der aktuell angemeldete Benutzer.

Import vorhandener Daten

  • Nur Admins koennen den Import ueber den Menuepunkt Import aufrufen.
  • Der Import akzeptiert eine CSV-Datei mit Semikolon als Trennzeichen oder alternativ direkte Eingabe im Textfeld.
  • Die CSV-Datei muss UTF-8 kodiert sein.
  • Erwartetes Format pro Zeile:
User;Typ;Kennung;Aktion
  • Beispiel:
Max Mustermann;Tuerchip;CHIP-1001;Import
Erika Muster;Parkkarte;PARK-2001;Import
  • Eine optionale Kopfzeile User;Typ;Kennung;Aktion wird automatisch erkannt und uebersprungen.

  • Unterstuetzte Typen sind Tuerchip, Parkkarte und Poolfahrzeug.

  • Bei der Ausgabe von Poolfahrzeug wird das Kennzeichen als Kennung erfasst.

  • Die Aktion Import uebernimmt vorhandene aktive Bestandsdaten in die Datenbank.

  • Falls ein User noch nicht existiert, wird er beim Import automatisch angelegt.

  • Bereits vergebene Kennungen oder widerspruechliche aktive Zuordnungen werden gesammelt als Fehler angezeigt; der Import wird erst ausgefuehrt, wenn keine Fehler mehr vorhanden sind.

Description
Kleine Datenbank zur Verwaltung von Türchips und Parkkarten
Readme 319 KiB
Languages
HTML 58.4%
Python 41.4%
Dockerfile 0.2%