Skip to content

MindCollaps/ProductManager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Product Manager

Modernes Reparatur- und Auftragsmanagement für Werkstätten, Service-Teams und Ersatzteilprozesse.

Überblick

ProductManager bildet den kompletten Weg einer Reparaturanfrage ab: vom ersten Kunden-Login über die Anfrage, die interne Bearbeitung und Kommunikation bis hin zur Ersatzteilverwaltung, Statusverfolgung und Reparaturwert-Auswertung.

Implementierte Funktionen

Kundenbereich

  • Registrierung und Login mit E-Mail-Verifizierung
  • Neue Reparaturanfragen erstellen (Gerät, Problembeschreibung, Verdacht)
  • Eigene Anfragen und deren Status einsehen
  • Echtzeit-Chat pro Anfrage
  • In-App-Benachrichtigungen mit Badge-Zähler (als gelesen markieren, löschen)
  • Reparaturwert-Tile: Gegenüberstellung Reparaturkosten (grün) vs. Neukaufwert (gelb)
  • Reparatur-Graph der Arbeitsschritte in Lesansicht
  • Reparaturverlauf-Timeline (Gantt) mit Verweildauer pro Status, sofern vom Admin freigegeben
  • Status-E-Mails bei Empfang und Versand des Geräts

Staff-Bereich

  • Übersicht und Detailansicht aller Reparaturanfragen
  • Anfragen annehmen, ablehnen, abschließen, stornieren, archivieren
  • Mitarbeiter einer Anfrage zuweisen
  • Arbeitsschritte (Work Items) anlegen, bearbeiten, löschen
    • Status: PENDING, IN_PROGRESS, DONE
    • Mitarbeiter-Zuweisung pro Schritt
    • Standardschritte zurücksetzen
  • Ersatzteil-Bestellungen pro Arbeitsschritt
    • Teile aus dem Katalog hinzufügen (Menge, Lieferant, Kostenschätzung)
    • Statusverlauf: DRAFT → ORDERED → SHIPPED → RECEIVED → INSTALLED
  • Reparaturgerät anlegen und bearbeiten (Seriennummer, Anzeigename, Notizen)
  • Reparaturstatus-Phasen setzen (RECEIVED → IN_DIAGNOSIS → WAITING_FOR_PARTS → IN_REPAIR → IN_QA → IN_OUTGOING → ...)
  • Chat mit Kunden
  • Verlauf / Archiv abgeschlossener Aufträge
  • Reparaturwert-Tile und Reparaturverlauf-Timeline (Gantt)

Admin-Bereich (Obermenge von Staff)

  • Gerätekatalog verwalten (Geräte, Marken, Kategorien)
  • Arbeitsschritttypen verwalten
  • Ersatzteilkatalog verwalten (Name, Hersteller, SKU, Einkaufs- und Verkaufspreis)
  • Systemkonfiguration (Stundensatz, Reparaturverlauf für Kunden ein-/ausblenden)
  • Demo-Modus: Beispieldaten und Demo-User (demo / demo) per Schalter erzeugen bzw. entfernen

Echtzeit & Hintergrund

  • Socket.IO für Chat-Nachrichten und Benachrichtigungs-Badges
  • Automatische Zustandssynchronisation (Anfragestatus aus Arbeitsschritt-Completion)
  • Benachrichtigungs-Digest per E-Mail (konfigurierbar)
  • E-Mails: Kontobestätigung, Passwort-Reset, Anfrage-Annahme, Gerät empfangen, Gerät unterwegs

Sicherheit & Infrastruktur

  • JWT-Sessions in Redis (kein DB-Session-Store)
  • Rollenbasierte Zugriffskontrolle: CUSTOMER / STAFF / ADMIN
  • Rate-Limiting für Auth-Endpunkte
  • Auto-Logout bei abgelaufenem Token (401-Interceptor)

Geplante Erweiterungen

  • 📦 Warteschlange mit geschätzter Restzeit auf Basis der aktuellen Auslastung
  • 📊 Statistik- und Graph-Ansichten für Gerätetypen, Reparaturarten und Team-Auswertung

Ablauf einer Reparaturanfrage

Siehe Detaillierter Ablauf für den vollständigen End-to-End-Prozess.

Screenshots

Staff-Sicht: Reparaturanfrage

Staff Reparaturanfrage

Kunden-Sicht: Chat

Kunden Chat

Kunden-Sicht: Reparatur-Graph

Reparatur Graph

Entwicklung

Voraussetzungen

  • Bun
  • Docker und Docker Compose (bevorzugter lokaler Workflow)

Start mit Docker (empfohlen)

bun dev

Lokaler Start (ohne Docker, eigene Postgres/Redis nötig)

bun install
bun dev:local

Nützliche Befehle

bun build          # Production-Build
bun lint           # Style- und ESLint-Prüfung
bun lint:fix       # Automatische Korrekturen
bun db-push        # Prisma-Schema ohne Migration anwenden (dev)
bun db-deploy      # Ausstehende Migrationen anwenden (prod-sicher)
bun db-seed        # Seed-Daten einspielen
bun db-reset       # Datenbank komplett zurücksetzen (destruktiv)
npx tsc --noEmit   # TypeScript-Prüfung ohne Build

Tech-Stack

Schicht Technologie
Framework Nuxt 4 (Full-Stack)
Frontend Vue 3, Pinia, SCSS
ORM Prisma 7, PostgreSQL
Auth JWT + Redis
Echtzeit Socket.IO
Mail Nodemailer
Runtime Bun / Node.js
Container Docker Compose

About

Modernes Reparatur- und Auftragsmanagement für Werkstätten, Service-Teams und Ersatzteilprozesse.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors