From 895c55399fd494fd4e3e26ada2a117418766df83 Mon Sep 17 00:00:00 2001 From: Kenso Grimm Date: Tue, 30 Dec 2025 20:29:59 +0100 Subject: [PATCH 1/2] wsid update --- src/components/CreateWorksheetModal.jsx | 287 +++++------------ src/components/StatusHistoryModal.jsx | 141 +++++++++ src/components/TicketRow.jsx | 210 +++++++++---- src/components/WorksheetList.jsx | 293 ++++++++++------- src/components/WorksheetStats.jsx | 402 +++++++++++++++--------- src/hooks/useWorkorders.js | 55 +++- src/hooks/useWorksheets.js | 140 ++++++++- src/utils/createDummyTicket.js | 231 ++++++++++++++ 8 files changed, 1212 insertions(+), 547 deletions(-) create mode 100644 src/components/StatusHistoryModal.jsx create mode 100644 src/utils/createDummyTicket.js diff --git a/src/components/CreateWorksheetModal.jsx b/src/components/CreateWorksheetModal.jsx index 210946e..49ac32d 100644 --- a/src/components/CreateWorksheetModal.jsx +++ b/src/components/CreateWorksheetModal.jsx @@ -1,4 +1,5 @@ import { useState, useEffect } from 'react' +import { FaTimes } from 'react-icons/fa' import { useAuth } from '../context/AuthContext' const SERVICE_TYPES = ['Remote', 'On Site', 'Off Site', 'COMMENT'] @@ -157,77 +158,26 @@ export default function CreateWorksheetModal({ isOpen, onClose, workorder, onCre if (!isOpen || !workorder) return null return ( -
- { e.preventDefault(); onClose(); }} style={{ - background: 'linear-gradient(135deg, #10b981 0%, #059669 100%)', - borderRadius: '50%', - width: '60px', - height: '60px', - display: 'flex', - alignItems: 'center', - justifyContent: 'center', - fontSize: '2rem', - transition: 'transform 0.2s ease' - }} onMouseEnter={(e) => e.currentTarget.style.transform = 'rotate(90deg)'} onMouseLeave={(e) => e.currentTarget.style.transform = 'rotate(0deg)'}>× - -
-
-
-
-
 
-
-
-

- 📝 - Create New Worksheet - WOID {workorder.woid} -

-
-
-
 
-
+
+ + + +
+

Create New Worksheet - WOID {workorder.woid}

+ + {error && ( +
+ {error}
- - {error && ( -
-
-
 
-
-
- ⚠️ {error} -
-
-
 
-
-
- )} - -
-
-
 
- - {/* Linke Spalte */} -
- Service Type
- handleChange('serviceType', e.target.value)} required @@ -236,11 +186,12 @@ export default function CreateWorksheetModal({ isOpen, onClose, workorder, onCre ))} -

+
- New Status
- handleChange('newStatus', e.target.value)} required @@ -249,42 +200,40 @@ export default function CreateWorksheetModal({ isOpen, onClose, workorder, onCre ))} -

+
- New Response Level
- handleChange('newResponseLevel', e.target.value)} > - + {RESPONSE_LEVELS.map(level => ( ))} -

+
-
- +
-
+ Nur Kommentar (keine Arbeitszeit) +
+
- {/* Rechte Spalte */} -
- Total Time (Minuten)
- +
+ + - + {autoCalculate && formData.startTime && formData.endTime ? '✓ Automatisch berechnet' : 'Manuell eingeben'} -

+
- Start Date (dd.mm.yyyy)
- + + handleChange('startDate', e.target.value)} - pattern="^[0-3][0-9]\.[0-1][0-9]\.[1-2][0-9][0-9][0-9]$" required /> -

+
- End Date (dd.mm.yyyy)
- + + handleChange('endDate', e.target.value)} - pattern="^[0-3][0-9]\.[0-1][0-9]\.[1-2][0-9][0-9][0-9]$" required /> -

+
- Start Time (hhmm)
- + + handleChange('startTime', e.target.value)} - pattern="[0-2][0-9][0-5][0-9]" - placeholder="1000" maxLength="4" /> -

+
- End Time (hhmm)
- + + handleChange('endTime', e.target.value)} - pattern="[0-2][0-9][0-5][0-9]" - placeholder="1030" maxLength="4" /> -

- -
 
-
-
-
 
-
- Action Details
- -
-
 
-
+
+ +