first Commit
This commit is contained in:
66
README.md
Normal file
66
README.md
Normal file
@@ -0,0 +1,66 @@
|
||||
# Verwaltung fuer Tuerchips und Parkkarten
|
||||
|
||||
## Voraussetzungen
|
||||
- Python 3.10 oder neuer
|
||||
|
||||
## Installation
|
||||
```bash
|
||||
python3 -m venv .venv
|
||||
source .venv/bin/activate
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
## Starten
|
||||
```bash
|
||||
python3 app.py
|
||||
```
|
||||
|
||||
Die Anwendung ist danach unter `http://127.0.0.1:5000` 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 und Parkkarten
|
||||
- Rueckgabe von Tuerchips und Parkkarten
|
||||
- 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:
|
||||
|
||||
```text
|
||||
User;Typ;Kennung;Aktion
|
||||
```
|
||||
|
||||
- Beispiel:
|
||||
|
||||
```text
|
||||
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` und `Parkkarte`.
|
||||
- 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.
|
||||
Reference in New Issue
Block a user