# Auftragsmanagement System

Ein vollständiges Auftragsmanagement-System basierend auf Symfony 6.4.

## Features

- **Dashboard** mit Übersicht über alle Aufträge und Statistiken
- **Auftragsmanagement** mit vollständiger CRUD-Funktionalität
- **Benutzerverwaltung** für Administratoren
- **Authentifizierung** mit Symfony Security
- **Moderne UI** mit externen CSS- und JavaScript-Dateien
- **Responsive Design** für mobile Geräte

## Technische Details

- Symfony 6.4
- Doctrine ORM
- Twig Templates (simplifiziert, keine inline CSS/JS)
- Externe CSS-Datei: `public/css/main.css`
- Externe JavaScript-Datei: `public/js/main.js`

## Installation

1. Abhängigkeiten installieren:
```bash
composer install
```

2. Datenbank erstellen:
```bash
php bin/console doctrine:database:create
php bin/console doctrine:schema:create
```

3. Server starten:
```bash
symfony server:start
```

oder

```bash
php -S localhost:8000 -t public
```

## Erster Benutzer erstellen

Nach der Installation können Sie einen Admin-Benutzer über die Konsole erstellen:

```bash
php bin/console app:create-user admin@example.com "Vorname" "Nachname" "Passwort" --admin
```

Oder Sie erstellen einen Benutzer über die Weboberfläche (benötigt Admin-Rechte).

## Projektstruktur

```
projekt_fsm/
├── config/          # Symfony Konfiguration
├── public/          # Öffentliche Dateien
│   ├── css/        # CSS-Dateien
│   └── js/         # JavaScript-Dateien
├── src/
│   ├── Controller/ # Controller
│   ├── Entity/     # Doctrine Entities
│   ├── Form/       # Symfony Forms
│   └── Repository/ # Doctrine Repositories
└── templates/      # Twig Templates
```

## Routen

- `/` - Dashboard
- `/login` - Anmeldung
- `/auftraege` - Auftragsübersicht
- `/auftraege/neu` - Neuer Auftrag
- `/auftraege/{id}` - Auftrag anzeigen
- `/auftraege/{id}/bearbeiten` - Auftrag bearbeiten
- `/benutzer` - Benutzerverwaltung (nur Admin)
- `/benutzer/neu` - Neuer Benutzer (nur Admin)

## Design-Prinzipien

- **Keine inline CSS/JS in Twig-Templates**: Alle Styles und Scripts sind in externen Dateien
- **Simplifizierte Templates**: Twig-Dateien enthalten nur die notwendige Struktur
- **Moderne UI**: Sauberes, responsives Design mit CSS-Variablen
- **Gute UX**: Intuitive Navigation und klare Feedback-Meldungen
