feat(projects): Einsatz/Übung-Modus
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 22m24s
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 22m24s
- Feld mode (EINSATZ/UEBUNG) am Projekt + idempotente Auto-Migration - Auswahl beim Erstellen (Segmented-Control mit Lucide-Icons) - Badge "Einsatz"/"Übung" in der Projektliste - Eigene Nummerierung für Übungen (Ü-YYYY-NNNN, getrennt gezählt) - Journal-Titel wird bei Übung zu "Übungs-Journal" - ROADMAP.md mit Verbesserungs-Fahrplan ergänzt Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -44,6 +44,7 @@ interface JournalViewProps {
|
||||
projectId: string | null
|
||||
projectTitle: string
|
||||
projectLocation: string
|
||||
mode?: 'EINSATZ' | 'UEBUNG'
|
||||
einsatzleiter: string
|
||||
journalfuehrer: string
|
||||
canEdit: boolean
|
||||
@@ -65,7 +66,8 @@ function formatDateTime(dateStr: string) {
|
||||
d.toLocaleTimeString('de-CH', { hour: '2-digit', minute: '2-digit' })
|
||||
}
|
||||
|
||||
export function JournalView({ projectId, projectTitle, projectLocation, einsatzleiter, journalfuehrer, canEdit, tenantId, einsatzNr, tenantName, tenantLogoUrl, mapRef, mapScreenshot: preCapuredScreenshot }: JournalViewProps) {
|
||||
export function JournalView({ projectId, projectTitle, projectLocation, mode, einsatzleiter, journalfuehrer, canEdit, tenantId, einsatzNr, tenantName, tenantLogoUrl, mapRef, mapScreenshot: preCapuredScreenshot }: JournalViewProps) {
|
||||
const isUebung = mode === 'UEBUNG'
|
||||
const [entries, setEntries] = useState<JournalEntry[]>([])
|
||||
const [checkItems, setCheckItems] = useState<JournalCheckItem[]>([])
|
||||
const [pendenzen, setPendenzen] = useState<JournalPendenz[]>([])
|
||||
@@ -432,7 +434,7 @@ export function JournalView({ projectId, projectTitle, projectLocation, einsatzl
|
||||
<div className="flex items-center justify-between mb-2 print:mb-1">
|
||||
<h2 className="text-lg md:text-xl font-bold flex items-center gap-2 print:text-base text-red-800 dark:text-red-400">
|
||||
<ClipboardList className="w-5 h-5 md:w-6 md:h-6 print:w-4 print:h-4" />
|
||||
Einsatz-Journal
|
||||
{isUebung ? 'Übungs-Journal' : 'Einsatz-Journal'}
|
||||
</h2>
|
||||
<div className="flex gap-1.5 print:hidden">
|
||||
<Button
|
||||
|
||||
Reference in New Issue
Block a user