resolve issues with new features

This commit is contained in:
Matthias Hochmeister
2026-03-12 16:42:21 +01:00
parent 5aa309b97a
commit 68586b01dc
19 changed files with 526 additions and 109 deletions

View File

@@ -19,7 +19,7 @@ import {
import { ArrowBack, Save } from '@mui/icons-material';
import { useNavigate, useParams } from 'react-router-dom';
import DashboardLayout from '../components/dashboard/DashboardLayout';
import { toGermanDate, fromGermanDate } from '../utils/dateInput';
import { toGermanDate, fromGermanDate, isValidGermanDate } from '../utils/dateInput';
import { equipmentApi } from '../services/equipment';
import { vehiclesApi } from '../services/vehicles';
import {
@@ -190,6 +190,12 @@ function AusruestungForm() {
errors.pruef_intervall_monate = 'Prüfintervall muss zwischen 1 und 120 Monaten liegen.';
}
}
if (form.letzte_pruefung_am && !isValidGermanDate(form.letzte_pruefung_am)) {
errors.letzte_pruefung_am = 'Ungültiges Datum. Format: TT.MM.JJJJ';
}
if (form.naechste_pruefung_am && !isValidGermanDate(form.naechste_pruefung_am)) {
errors.naechste_pruefung_am = 'Ungültiges Datum. Format: TT.MM.JJJJ';
}
setFieldErrors(errors);
return Object.keys(errors).length === 0;
};
@@ -466,6 +472,15 @@ function AusruestungForm() {
placeholder="TT.MM.JJJJ"
value={form.letzte_pruefung_am}
onChange={(e) => setForm((prev) => ({ ...prev, letzte_pruefung_am: e.target.value }))}
onBlur={() => {
if (form.letzte_pruefung_am && !isValidGermanDate(form.letzte_pruefung_am)) {
setFieldErrors((prev) => ({ ...prev, letzte_pruefung_am: 'Ungültiges Datum. Format: TT.MM.JJJJ' }));
} else {
setFieldErrors((prev) => ({ ...prev, letzte_pruefung_am: undefined }));
}
}}
error={Boolean(fieldErrors.letzte_pruefung_am)}
helperText={fieldErrors.letzte_pruefung_am}
InputLabelProps={{ shrink: true }}
/>
</Grid>
@@ -476,6 +491,15 @@ function AusruestungForm() {
placeholder="TT.MM.JJJJ"
value={form.naechste_pruefung_am}
onChange={(e) => setForm((prev) => ({ ...prev, naechste_pruefung_am: e.target.value }))}
onBlur={() => {
if (form.naechste_pruefung_am && !isValidGermanDate(form.naechste_pruefung_am)) {
setFieldErrors((prev) => ({ ...prev, naechste_pruefung_am: 'Ungültiges Datum. Format: TT.MM.JJJJ' }));
} else {
setFieldErrors((prev) => ({ ...prev, naechste_pruefung_am: undefined }));
}
}}
error={Boolean(fieldErrors.naechste_pruefung_am)}
helperText={fieldErrors.naechste_pruefung_am}
InputLabelProps={{ shrink: true }}
/>
</Grid>