diff --git a/apps/edr-freight-web/backoffice/src/pages/fleet/FinancialReportsPage.tsx b/apps/edr-freight-web/backoffice/src/pages/fleet/FinancialReportsPage.tsx index 729c50427..f61583f8f 100644 --- a/apps/edr-freight-web/backoffice/src/pages/fleet/FinancialReportsPage.tsx +++ b/apps/edr-freight-web/backoffice/src/pages/fleet/FinancialReportsPage.tsx @@ -4,6 +4,7 @@ import { Card, Button, Stack, Group, Grid, Select, Text, ThemeIcon, RingProgress import { QUERY_KEYS } from '@/constants/QUERY_KEYS'; import { api } from '@/services/api'; import { vehiclesService } from '@/services/vehicles.service'; +import { freightBrand } from '@/theme/freight-brand'; interface FuelStats { vehicleId: string; @@ -162,7 +163,7 @@ export function FinancialReportsPage() { {report.fuelPercentage}% {report.fuelPercentage}% @@ -180,7 +181,7 @@ export function FinancialReportsPage() { {report.maintenancePercentage}% {report.maintenancePercentage}% diff --git a/apps/edr-freight-web/backoffice/src/pages/fleet/FleetDashboard.tsx b/apps/edr-freight-web/backoffice/src/pages/fleet/FleetDashboard.tsx index a977c592d..12c5725ed 100644 --- a/apps/edr-freight-web/backoffice/src/pages/fleet/FleetDashboard.tsx +++ b/apps/edr-freight-web/backoffice/src/pages/fleet/FleetDashboard.tsx @@ -1,11 +1,12 @@ import { useMemo } from 'react'; import { useQuery } from '@tanstack/react-query'; -import { Card, Stack, Group, Grid, Text, ThemeIcon, Progress, Badge, Table, RingProgress, Container, Title, Box, Tabs } from '@mantine/core'; -import { Truck, Fuel, Wrench, TrendingUp, AlertCircle, Users, User, MapPin, Calendar } from 'lucide-react'; +import { Card, Stack, Group, Grid, Text, ThemeIcon, Progress, Badge, Table, RingProgress, Container, Title, Box, Tabs, Button } from '@mantine/core'; +import { Truck, Fuel, Wrench, TrendingUp, AlertCircle, Users, User, MapPin, Calendar, BarChart3 } from 'lucide-react'; import Breadcrumbs from '@/components/ui/Breadcrumbs'; import { QUERY_KEYS } from '@/constants/QUERY_KEYS'; import { api } from '@/auth/http'; import { vehiclesService } from '@/services/vehicles.service'; +import { freightBrand } from '@/theme/freight-brand'; interface Vehicle { id: string; @@ -38,10 +39,10 @@ interface FleetMetrics { assignedDrivers: number; } -const StatCard = ({ icon: Icon, label, value, color = 'blue', change }: any) => ( - +const StatCard = ({ icon: Icon, label, value, color = 'edr-green', change }: any) => ( + - + @@ -50,10 +51,10 @@ const StatCard = ({ icon: Icon, label, value, color = 'blue', change }: any) => {label} - + {value} - {change && 0 ? 'green' : 'red'} size="lg">{change > 0 ? '+' : ''}{change}%} + {change && 0 ? 'edr-green' : 'edr-red'} size="lg">{change > 0 ? '+' : ''}{change}%} @@ -145,16 +146,16 @@ export function FleetDashboard() { {/* Primary Metrics */} - + - + - + - + @@ -172,15 +173,15 @@ export function FleetDashboard() { Active Vehicles {metrics.activeVehicles} / {metrics.totalVehicles} - + Maintenance Overdue - {metrics.maintenanceOverdue} + {metrics.maintenanceOverdue} - + @@ -188,7 +189,7 @@ export function FleetDashboard() { Idle / Under Maintenance {metrics.totalVehicles - metrics.activeVehicles} - + @@ -205,8 +206,8 @@ export function FleetDashboard() { @@ -226,7 +227,7 @@ export function FleetDashboard() { - + Fuel @@ -238,7 +239,7 @@ export function FleetDashboard() { - + Maintenance @@ -284,7 +285,7 @@ export function FleetDashboard() { {v.manufacturer} {v.model} - + {v.status || 'UNKNOWN'} @@ -337,9 +338,9 @@ export function FleetDashboard() { {d.assignedVehicle ? ( - Assigned + Assigned ) : ( - Unassigned + Unassigned )} diff --git a/apps/edr-freight-web/backoffice/src/pages/fleet/FuelPurchasePage.tsx b/apps/edr-freight-web/backoffice/src/pages/fleet/FuelPurchasePage.tsx index 0869ceb26..574b9d1c6 100644 --- a/apps/edr-freight-web/backoffice/src/pages/fleet/FuelPurchasePage.tsx +++ b/apps/edr-freight-web/backoffice/src/pages/fleet/FuelPurchasePage.tsx @@ -23,6 +23,7 @@ import { useToast } from "@/hooks/use-toast"; import { api } from "@/auth/http"; import { QUERY_KEYS } from "@/constants/QUERY_KEYS"; import { vehiclesService, type Vehicle as VehicleType } from "@/services/vehicles.service"; +import { freightBrand } from "@/theme/freight-brand"; interface FuelPurchase { id: string; @@ -123,7 +124,7 @@ export default function FuelPurchasePage() { Fuel Purchases - } onClick={() => setModalOpen(true)}> + } onClick={() => setModalOpen(true)} color="edr-green"> Record Purchase diff --git a/apps/edr-freight-web/backoffice/src/pages/fleet/MaintenancePage.tsx b/apps/edr-freight-web/backoffice/src/pages/fleet/MaintenancePage.tsx index d94ed375c..61c1215ba 100644 --- a/apps/edr-freight-web/backoffice/src/pages/fleet/MaintenancePage.tsx +++ b/apps/edr-freight-web/backoffice/src/pages/fleet/MaintenancePage.tsx @@ -2,9 +2,11 @@ import { useState, useMemo } from 'react'; import { useQuery, useMutation, useQueryClient } from '@tanstack/react-query'; import { Card, Button, Modal, Stack, Group, Grid, Select, TextInput, NumberInput, Table, Badge, Text } from '@mantine/core'; import { DateInput } from '@mantine/dates'; +import { Plus } from 'lucide-react'; import { QUERY_KEYS } from '@/constants/QUERY_KEYS'; import { api } from '@/services/api'; import { vehiclesService } from '@/services/vehicles.service'; +import { freightBrand } from '@/theme/freight-brand'; interface MaintenanceSchedule { id: string; @@ -76,12 +78,12 @@ export function MaintenancePage() { const statusColor = (status: string) => { const colors: Record = { - SCHEDULED: 'blue', - IN_PROGRESS: 'yellow', - COMPLETED: 'green', - OVERDUE: 'red', + SCHEDULED: 'edr-blue', + IN_PROGRESS: 'edr-amber-soft', + COMPLETED: 'edr-green', + OVERDUE: 'edr-red', }; - return colors[status] || 'gray'; + return colors[status] || 'edr-slate'; }; return ( @@ -90,7 +92,9 @@ export function MaintenancePage() { Schedule Maintenance - setOpenScheduleModal(true)}>New Schedule + setOpenScheduleModal(true)} color="edr-green" leftSection={}> + New Schedule +