feat: Improve the administrator profile
This commit is contained in:
34
frontend/src/services/admin.service.ts
Normal file
34
frontend/src/services/admin.service.ts
Normal file
@@ -0,0 +1,34 @@
|
||||
import { apiFetch } from "../lib/api";
|
||||
|
||||
export interface AdminRouteItem {
|
||||
routeId: string;
|
||||
name: string;
|
||||
truckId: number;
|
||||
status: string;
|
||||
currentPositionId: number;
|
||||
arrivalResult: "PENDING" | "ARRIVED" | "FAILED" | "CANCELLED";
|
||||
cancelled: boolean;
|
||||
cancelReason?: string;
|
||||
updatedAt?: string;
|
||||
}
|
||||
|
||||
export const listAllRoutes = () =>
|
||||
apiFetch<AdminRouteItem[]>("/api/admin/routes");
|
||||
|
||||
export const cancelRoute = (routeId: string, reason?: string) =>
|
||||
apiFetch<{ message: string; routeId: string }>(
|
||||
`/api/admin/routes/${routeId}/cancel`,
|
||||
{
|
||||
method: "POST",
|
||||
body: JSON.stringify(reason ? { reason } : {}),
|
||||
},
|
||||
);
|
||||
|
||||
export const resumeRoute = (routeId: string) =>
|
||||
apiFetch<{ message: string; routeId: string }>(
|
||||
`/api/admin/routes/${routeId}/resume`,
|
||||
{
|
||||
method: "POST",
|
||||
body: JSON.stringify({}),
|
||||
},
|
||||
);
|
||||
Reference in New Issue
Block a user