fix: restore missing fleet dashboard store exports
Some checks failed
ERP CI/CD Pipeline / test (push) Has been cancelled
ERP CI/CD Pipeline / Deploy (server git pull + compose) (push) Has been cancelled

Re-add missing travel-expenses and service-note store exports used by the invoices PDF page, and include travel_expenses_table in service-context fallback. This fixes the frontend Docker build failure caused by missing named exports.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
mariomitte
2026-09-08 06:46:16 +02:00
parent 5af66c31b6
commit 3931c9065b

View File

@@ -731,10 +731,12 @@ export async function fetchTasksByWorkOrder(workOrderId) {
export async function fetchWorkOrderTaskServiceContext(workOrderId) { export async function fetchWorkOrderTaskServiceContext(workOrderId) {
if (!workOrderId) { if (!workOrderId) {
return { tasks: [], additional_costs_table: null }; return { tasks: [], additional_costs_table: null, travel_expenses_table: null };
} }
const payload = await api.get(`fleet/work-orders/${encodeURIComponent(workOrderId)}/task-service-context/`); const payload = await api.get(`fleet/work-orders/${encodeURIComponent(workOrderId)}/task-service-context/`);
return payload && typeof payload === 'object' ? payload : { tasks: [], additional_costs_table: null }; return payload && typeof payload === 'object'
? payload
: { tasks: [], additional_costs_table: null, travel_expenses_table: null };
} }
export async function fetchWorkOrderAdditionalCostsTable(workOrderId) { export async function fetchWorkOrderAdditionalCostsTable(workOrderId) {
@@ -759,6 +761,42 @@ export async function updateWorkOrderAdditionalCostsTable(workOrderId, data) {
return payload; return payload;
} }
export async function fetchWorkOrderTravelExpensesTable(workOrderId) {
if (!workOrderId) {
return {
work_order: null,
broj_sati: '0.00',
kolicina_dnevnica: '0.00',
iznos_dnevnica: '30.00',
daily_rate_country: 'HR',
total_for_payout: '0.00',
};
}
const payload = await api.get(`fleet/work-orders/${encodeURIComponent(workOrderId)}/travel-expenses-table/`);
return payload && typeof payload === 'object'
? payload
: {
work_order: null,
broj_sati: '0.00',
kolicina_dnevnica: '0.00',
iznos_dnevnica: '30.00',
daily_rate_country: 'HR',
total_for_payout: '0.00',
};
}
export async function updateWorkOrderTravelExpensesTable(workOrderId, data) {
if (!workOrderId) {
throw new Error('Work order ID je obavezan.');
}
const payload = await api.put(
`fleet/work-orders/${encodeURIComponent(workOrderId)}/travel-expenses-table/`,
data ?? {},
);
showToast('Obračun putnih troškova je uspješno spremljen.', 'success');
return payload;
}
export async function updateTaskWorkHoursTable(taskId, data) { export async function updateTaskWorkHoursTable(taskId, data) {
if (!taskId) { if (!taskId) {
throw new Error('Task ID je obavezan.'); throw new Error('Task ID je obavezan.');
@@ -768,6 +806,17 @@ export async function updateTaskWorkHoursTable(taskId, data) {
return payload; return payload;
} }
export async function updateTaskServiceReportNote(taskId, note) {
if (!taskId) {
throw new Error('Task ID je obavezan.');
}
const payload = await api.patch(`tasks/tasks/${encodeURIComponent(taskId)}/`, {
service_report_note: String(note ?? ''),
});
showToast('Napomena servisnog izvještaja je uspješno spremljena.', 'success');
return payload;
}
export async function createWorkOrderInvoice(workOrderId, data = {}, signal = null) { export async function createWorkOrderInvoice(workOrderId, data = {}, signal = null) {
if (!workOrderId) { if (!workOrderId) {
throw new Error('Work order ID je obavezan.'); throw new Error('Work order ID je obavezan.');