import { useState, useEffect } from 'react'; import { useAuth } from '../context/AuthContext'; const EMPTY_FORM = { erlNummer: '', seriennummer: '', artikelNr: '', bezeichnung: '', defekt: '', lagerstandortId: '', zustaendig: '', prio: 'mittel', kommentar: '', }; export default function DefektForm({ onAdd, showToast, lagerstandorte, colleagues }) { const { user } = useAuth(); const ownName = user?.name || user?.email || ''; const [form, setForm] = useState({ ...EMPTY_FORM, zustaendig: ownName }); useEffect(() => { if (ownName && !form.zustaendig) { setForm((f) => ({ ...f, zustaendig: ownName })); } }, [ownName]); function handleChange(e) { const { name, value } = e.target; setForm((prev) => ({ ...prev, [name]: value })); } async function handleSubmit(e) { e.preventDefault(); if (!form.erlNummer.trim() || !form.seriennummer.trim() || !form.zustaendig.trim()) { showToast('Bitte ERL, Seriennummer und Zuständig ausfüllen!', '#C62828'); return; } try { await onAdd({ erlNummer: form.erlNummer.trim(), seriennummer: form.seriennummer.trim(), artikelNr: form.artikelNr.trim(), bezeichnung: form.bezeichnung.trim(), defekt: form.defekt.trim(), lagerstandortId: form.lagerstandortId, zustaendig: form.zustaendig.trim(), prio: form.prio, kommentar: form.kommentar.trim(), }); showToast('Asset erfasst: ' + form.erlNummer.trim()); setForm({ ...EMPTY_FORM, zustaendig: ownName }); } catch { showToast('Fehler beim Speichern!', '#C62828'); } } return (