79 lines
1.7 KiB
Markdown
79 lines
1.7 KiB
Markdown
# MUH App
|
|
|
|
Spring Boot + React Anwendung fuer die Bearbeitung von Milchproben, Antibiogrammen,
|
|
Therapieempfehlungen sowie Verwaltungs- und Portalaufgaben.
|
|
|
|
## Projektstruktur
|
|
|
|
- `backend/`: Spring Boot REST API mit MongoDB-Anbindung
|
|
- `frontend/`: React/Vite Frontend fuer Desktop und Tablet
|
|
|
|
## Konfiguration
|
|
|
|
MongoDB ist bereits im Backend vorkonfiguriert:
|
|
|
|
- `mongodb://192.168.180.25:27017/muh`
|
|
|
|
Optional fuer echten Mailversand im Portal:
|
|
|
|
- `MUH_MAIL_ENABLED=true`
|
|
- `MUH_MAIL_HOST=...`
|
|
- `MUH_MAIL_PORT=587`
|
|
- `MUH_MAIL_USERNAME=...`
|
|
- `MUH_MAIL_PASSWORD=...`
|
|
- `MUH_MAIL_FROM=...`
|
|
- `MUH_MAIL_AUTH=true`
|
|
- `MUH_MAIL_STARTTLS=true`
|
|
|
|
Ohne SMTP-Konfiguration markiert das Portal Berichte als versendet, verschickt aber keine E-Mails.
|
|
|
|
## Backend starten
|
|
|
|
```bash
|
|
cd backend
|
|
mvn spring-boot:run
|
|
```
|
|
|
|
Backend-URL:
|
|
|
|
- `http://localhost:8090`
|
|
|
|
## Frontend starten
|
|
|
|
```bash
|
|
cd frontend
|
|
npm install
|
|
npm run dev
|
|
```
|
|
|
|
Frontend-URL:
|
|
|
|
- `http://localhost:5173`
|
|
|
|
Optional kann die API-URL im Frontend ueber `VITE_API_URL` gesetzt werden.
|
|
|
|
## Anmeldung
|
|
|
|
Es gibt jetzt drei Varianten:
|
|
|
|
- Schnelllogin ueber Benutzerkuerzel
|
|
- Login ueber E-Mail oder Benutzername plus Passwort
|
|
- Registrierung eines neuen Kundenkontos ueber Firmenname, Adresse, E-Mail und Passwort
|
|
|
|
Vordefinierter Admin:
|
|
|
|
- Benutzername: `admin`
|
|
- E-Mail: `admin@muh.local`
|
|
- Passwort: `Admin123!`
|
|
|
|
Kundenregistrierung:
|
|
|
|
- Die Registrierungsdaten werden dauerhaft in MongoDB in der Collection `users` gespeichert.
|
|
- Gespeichert werden `Firmenname`, `Adresse`, `E-Mail`, Passwort-Hash, generierter Loginname und Rolle `CUSTOMER`.
|
|
- Nach erfolgreicher Registrierung erfolgt sofort die Anmeldung in der Anwendung.
|
|
|
|
## Geprueft
|
|
|
|
- `cd backend && mvn test`
|
|
- `cd frontend && npm run build`
|