feat: dnevni unosi i svi dani u mjesecnom izvjestaju servisera
- Dodan model MonthlyServicerDayEntry s automatskom popunom prema tipu: office (08:00-16:00, Zagreb ured), vacation i sick_leave (8h bez vremena) - Migracija 0034_monthlyservicerdayentry za novu tablicu s UniqueConstraint - Novi ViewSet + serializer + endpoint fleet/monthly-servicer-day-entries/ (upsert: POST za novi dan ili update za isti dan ako vec postoji) - Backend DOCX report (_build_monthly_servicer_report_rows) sad generira redak za SVAKI dan u mjesecu: taskovi > rucni unos > prazan red - TaskCalendarWidget potpuno prepisan bez mojibake znakova (zamjena UTF-8 specijalnih znakova ASCII ekvivalentima u string literalima) - Tablica izvjestaja servisera: klikom na red bez naloga otvara se overlay s tri opcije (Rad u uredu / Bolovanje / Godisnji) - TaskCalendarPortal: dodan calendarWorkOrders computed (svi statusi) kako bi report imao potpune podatke o radnom vremenu - fetchMonthlyServicerEntries i upsertMonthlyServicerEntry u store-u Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -64,6 +64,17 @@ export default function TaskCalendarPortal() {
|
||||
));
|
||||
}, [workOrders, isSupervisorNotServiser, user?.id]);
|
||||
|
||||
const calendarWorkOrders = useMemo(() => {
|
||||
const base = Array.isArray(workOrders) ? workOrders : [];
|
||||
if (isSupervisorNotServiser) {
|
||||
return base;
|
||||
}
|
||||
return base.filter((item) => (
|
||||
String(item.creator || '') === String(user?.id || '')
|
||||
|| String(item.craneInfo?.assigned_servicer || '') === String(user?.id || '')
|
||||
));
|
||||
}, [workOrders, isSupervisorNotServiser, user?.id]);
|
||||
|
||||
useEffect(() => {
|
||||
if (!user?.id) return;
|
||||
fetchServiceNotes().catch(() => {});
|
||||
@@ -103,7 +114,7 @@ export default function TaskCalendarPortal() {
|
||||
<TaskCalendarWidget
|
||||
tasks={tasks}
|
||||
notes={notes}
|
||||
workOrders={activeWorkOrders}
|
||||
workOrders={calendarWorkOrders}
|
||||
onTaskClick={handleTaskClick}
|
||||
/>
|
||||
<ServiceNotesWidget
|
||||
|
||||
Reference in New Issue
Block a user