@fleetbase/fleetops-engine 0.6.38 → 0.6.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/addon/components/activity/form.hbs +2 -12
- package/addon/components/activity/logic-builder.hbs +1 -1
- package/addon/components/custom-entity/form.hbs +4 -20
- package/addon/components/device/form.hbs +3 -15
- package/addon/components/device/panel-header.hbs +13 -2
- package/addon/components/driver/details.hbs +33 -2
- package/addon/components/driver/form.hbs +42 -0
- package/addon/components/driver/panel-header.hbs +8 -1
- package/addon/components/driver/schedule.hbs +115 -76
- package/addon/components/driver/schedule.js +349 -157
- package/addon/components/driver-onboard-settings.hbs +2 -8
- package/addon/components/entity-field-editing-settings.hbs +2 -5
- package/addon/components/equipment/card.hbs +49 -0
- package/addon/components/equipment/card.js +6 -0
- package/addon/components/equipment/details.hbs +83 -44
- package/addon/components/equipment/form.hbs +111 -41
- package/addon/components/equipment/form.js +78 -10
- package/addon/components/equipment/panel-header.hbs +36 -0
- package/addon/components/equipment/panel-header.js +2 -0
- package/addon/components/fleet/driver-listing.hbs +3 -1
- package/addon/components/fleet/vehicle-listing.hbs +4 -7
- package/addon/components/fleet-panel/vehicle-listing.hbs +1 -6
- package/addon/components/fuel-report/form.hbs +1 -5
- package/addon/components/layout/fleet-ops-sidebar.hbs +40 -36
- package/addon/components/layout/fleet-ops-sidebar.js +61 -10
- package/addon/components/maintenance/cost-panel.hbs +176 -0
- package/addon/components/maintenance/cost-panel.js +241 -0
- package/addon/components/maintenance/details.hbs +123 -60
- package/addon/components/maintenance/form.hbs +138 -78
- package/addon/components/maintenance/form.js +131 -6
- package/addon/components/maintenance/panel-header.hbs +31 -0
- package/addon/components/maintenance/panel-header.js +2 -0
- package/addon/components/maintenance-schedule/details.hbs +260 -0
- package/addon/components/maintenance-schedule/details.js +158 -0
- package/addon/components/maintenance-schedule/form.hbs +287 -0
- package/addon/components/maintenance-schedule/form.js +199 -0
- package/addon/components/map/container.hbs +1 -1
- package/addon/components/map/drawer/device-event-listing.hbs +1 -1
- package/addon/components/map/drawer/driver-listing.hbs +1 -6
- package/addon/components/map/drawer/place-listing.hbs +1 -6
- package/addon/components/map/drawer/vehicle-listing.hbs +1 -6
- package/addon/components/map/drawer.hbs +8 -1
- package/addon/components/map/leaflet-live-map.hbs +2 -1
- package/addon/components/map/toolbar/visibility-control-panel.hbs +1 -1
- package/addon/components/map/toolbar.hbs +4 -29
- package/addon/components/modals/add-driver-shift.hbs +155 -0
- package/addon/components/modals/add-driver-shift.js +210 -0
- package/addon/components/modals/bulk-assign-orders.hbs +67 -0
- package/addon/components/modals/driver-shift.hbs +43 -0
- package/addon/components/modals/driver-shift.js +56 -0
- package/addon/components/modals/entity-form.hbs +5 -28
- package/addon/components/modals/orchestrator-import.hbs +351 -0
- package/addon/components/modals/orchestrator-import.js +807 -0
- package/addon/components/modals/order-config-new-status.hbs +1 -5
- package/addon/components/modals/scheduling-conflict.hbs +47 -0
- package/addon/components/modals/scheduling-conflict.js +53 -0
- package/addon/components/modals/send-work-order.hbs +91 -0
- package/addon/components/modals/send-work-order.js +3 -0
- package/addon/components/modals/service-area-form.hbs +1 -6
- package/addon/components/modals/set-driver-availability.hbs +50 -0
- package/addon/components/modals/set-driver-availability.js +57 -0
- package/addon/components/modals/update-order-activity.hbs +13 -9
- package/addon/components/modals/user-form.hbs +1 -5
- package/addon/components/modals/vehicle-form.hbs +17 -102
- package/addon/components/modals/vendor-form.hbs +15 -82
- package/addon/components/orchestrator/card-fields-settings.hbs +76 -0
- package/addon/components/orchestrator/card-fields-settings.js +134 -0
- package/addon/components/orchestrator/order-pool.hbs +264 -0
- package/addon/components/orchestrator/order-pool.js +394 -0
- package/addon/components/orchestrator/phase-builder.hbs +162 -0
- package/addon/components/orchestrator/phase-builder.js +162 -0
- package/addon/components/orchestrator/plan-viewer.hbs +278 -0
- package/addon/components/orchestrator/plan-viewer.js +342 -0
- package/addon/components/orchestrator/resource-panel.hbs +301 -0
- package/addon/components/orchestrator/resource-panel.js +106 -0
- package/addon/components/orchestrator-workbench.hbs +318 -0
- package/addon/components/orchestrator-workbench.js +1087 -0
- package/addon/components/order/details/custom-fields.hbs +10 -1
- package/addon/components/order/details/detail.hbs +37 -2
- package/addon/components/order/details/detail.js +0 -1
- package/addon/components/order/details/integrated-vendor-details.hbs +4 -4
- package/addon/components/order/details/notes.hbs +1 -7
- package/addon/components/order/details/route.hbs +1 -5
- package/addon/components/order/form/details.hbs +44 -10
- package/addon/components/order/form/details.js +57 -0
- package/addon/components/order/form/notes.hbs +1 -7
- package/addon/components/order/form/payload.hbs +1 -7
- package/addon/components/order/form/route.hbs +3 -15
- package/addon/components/order/header.hbs +1 -7
- package/addon/components/order/route-editor.hbs +4 -25
- package/addon/components/order/schedule-card.hbs +102 -95
- package/addon/components/order/schedule-card.js +8 -3
- package/addon/components/order-config-manager/details.hbs +2 -10
- package/addon/components/order-config-manager/entities.hbs +1 -7
- package/addon/components/order-config-manager.hbs +1 -6
- package/addon/components/part/card.hbs +49 -0
- package/addon/components/part/card.js +6 -0
- package/addon/components/part/details.hbs +102 -56
- package/addon/components/part/form.hbs +131 -56
- package/addon/components/part/form.js +78 -11
- package/addon/components/part/panel-header.hbs +36 -0
- package/addon/components/part/panel-header.js +2 -0
- package/addon/components/place/form.hbs +1 -7
- package/addon/components/sensor/details.hbs +1 -1
- package/addon/components/sensor/form.hbs +5 -3
- package/addon/components/sensor/panel-header.hbs +8 -1
- package/addon/components/service-area/form.hbs +1 -6
- package/addon/components/service-rate/form.hbs +12 -60
- package/addon/components/telematic/form.hbs +6 -2
- package/addon/components/vehicle/details/maintenance-history.hbs +42 -0
- package/addon/components/vehicle/details/maintenance-history.js +32 -0
- package/addon/components/vehicle/details/schedules.hbs +40 -0
- package/addon/components/vehicle/details/schedules.js +32 -0
- package/addon/components/vehicle/details/work-orders.hbs +42 -0
- package/addon/components/vehicle/details/work-orders.js +32 -0
- package/addon/components/vehicle/details.hbs +30 -0
- package/addon/components/vehicle/form.hbs +39 -0
- package/addon/components/vehicle/panel-header.hbs +19 -49
- package/addon/components/warranty/details.hbs +3 -2
- package/addon/components/warranty/form.hbs +3 -17
- package/addon/components/work-order/details.hbs +135 -40
- package/addon/components/work-order/form.hbs +178 -45
- package/addon/components/work-order/form.js +197 -4
- package/addon/components/work-order/panel-header.hbs +31 -0
- package/addon/components/work-order/panel-header.js +2 -0
- package/addon/controllers/connectivity/devices/index/details.js +1 -1
- package/addon/controllers/maintenance/equipment/index/details/index.js +0 -1
- package/addon/controllers/maintenance/equipment/index/details.js +36 -1
- package/addon/controllers/maintenance/equipment/index/edit.js +56 -1
- package/addon/controllers/maintenance/equipment/index/new.js +32 -1
- package/addon/controllers/maintenance/equipment/index.js +127 -113
- package/addon/controllers/maintenance/maintenances/index/details/index.js +3 -0
- package/addon/controllers/maintenance/maintenances/index/details.js +54 -0
- package/addon/controllers/maintenance/maintenances/index/edit.js +68 -0
- package/addon/controllers/maintenance/maintenances/index/new.js +34 -0
- package/addon/controllers/maintenance/maintenances/index.js +191 -0
- package/addon/controllers/maintenance/parts/index/details/index.js +0 -1
- package/addon/controllers/maintenance/parts/index/details.js +36 -1
- package/addon/controllers/maintenance/parts/index/edit.js +56 -1
- package/addon/controllers/maintenance/parts/index/new.js +32 -1
- package/addon/controllers/maintenance/parts/index.js +135 -113
- package/addon/controllers/maintenance/schedules/index/details.js +115 -0
- package/addon/controllers/maintenance/schedules/index/edit.js +41 -0
- package/addon/controllers/maintenance/schedules/index/new.js +33 -0
- package/addon/controllers/maintenance/schedules/index.js +280 -0
- package/addon/controllers/maintenance/work-orders/index/details.js +41 -1
- package/addon/controllers/maintenance/work-orders/index/edit.js +67 -1
- package/addon/controllers/maintenance/work-orders/index/new.js +43 -1
- package/addon/controllers/maintenance/work-orders/index.js +105 -113
- package/addon/controllers/management/drivers/index/details.js +6 -1
- package/addon/controllers/management/vehicles/index/details.js +65 -0
- package/addon/controllers/management/vehicles/index.js +18 -0
- package/addon/controllers/operations/orchestrator.js +10 -0
- package/addon/controllers/operations/orders/index.js +6 -0
- package/addon/controllers/operations/scheduler/fleet-schedule.js +341 -0
- package/addon/controllers/operations/scheduler/index.js +799 -275
- package/addon/controllers/operations/scheduler.js +21 -0
- package/addon/controllers/settings/orchestrator.js +70 -0
- package/addon/controllers/settings/scheduling.js +155 -0
- package/addon/extension.js +19 -0
- package/addon/instance-initializers/register-vroom-allocation.js +27 -0
- package/addon/models/maintenance-schedule.js +61 -0
- package/addon/routes/maintenance/equipment/index/details.js +27 -1
- package/addon/routes/maintenance/equipment/index/edit.js +27 -1
- package/addon/routes/maintenance/maintenances/index/details/index.js +3 -0
- package/addon/routes/maintenance/maintenances/index/details.js +29 -0
- package/addon/routes/maintenance/maintenances/index/edit.js +29 -0
- package/addon/routes/maintenance/maintenances/index/new.js +3 -0
- package/addon/routes/maintenance/maintenances/index.js +23 -0
- package/addon/routes/maintenance/maintenances.js +3 -0
- package/addon/routes/maintenance/parts/index/details.js +27 -1
- package/addon/routes/maintenance/parts/index/edit.js +27 -1
- package/addon/routes/maintenance/schedules/index/details/index.js +2 -0
- package/addon/routes/maintenance/schedules/index/details/work-orders.js +11 -0
- package/addon/routes/maintenance/schedules/index/details.js +25 -0
- package/addon/routes/maintenance/schedules/index/edit.js +25 -0
- package/addon/routes/maintenance/schedules/index/new.js +2 -0
- package/addon/routes/maintenance/schedules/index.js +21 -0
- package/addon/routes/maintenance/schedules.js +2 -0
- package/addon/routes/maintenance/work-orders/index/details.js +27 -1
- package/addon/routes/maintenance/work-orders/index/edit.js +27 -1
- package/addon/routes/management/vehicles/index/details/maintenance-history.js +3 -0
- package/addon/routes/management/vehicles/index/details/schedules.js +3 -0
- package/addon/routes/management/vehicles/index/details/work-orders.js +3 -0
- package/addon/routes/operations/orchestrator.js +23 -0
- package/addon/routes/operations/scheduler/fleet-schedule.js +28 -0
- package/addon/routes/operations/scheduler/index.js +48 -26
- package/addon/routes/operations/scheduler.js +14 -1
- package/addon/routes/settings/orchestrator.js +27 -0
- package/addon/routes/settings/scheduling.js +3 -0
- package/addon/routes.js +31 -1
- package/addon/services/driver-actions.js +40 -7
- package/addon/services/driver-scheduling.js +4 -1
- package/addon/services/equipment-actions.js +15 -5
- package/addon/services/leaflet-map-manager.js +14 -6
- package/addon/services/maintenance-actions.js +17 -14
- package/addon/services/maintenance-schedule-actions.js +118 -0
- package/addon/services/orchestration-engine-interface.js +49 -0
- package/addon/services/orchestration-engine.js +74 -0
- package/addon/services/order-actions.js +15 -0
- package/addon/services/order-allocation.js +116 -0
- package/addon/services/part-actions.js +12 -2
- package/addon/services/scheduling.js +316 -0
- package/addon/services/vehicle-actions.js +70 -7
- package/addon/services/vroom-allocation-engine.js +45 -0
- package/addon/services/work-order-actions.js +80 -0
- package/addon/styles/fleetops-engine.css +1658 -0
- package/addon/templates/analytics/reports/index/edit.hbs +1 -1
- package/addon/templates/analytics/reports/index/new.hbs +1 -1
- package/addon/templates/application.hbs +6 -1
- package/addon/templates/connectivity/devices/index/details/events.hbs +0 -1
- package/addon/templates/connectivity/devices.hbs +0 -1
- package/addon/templates/connectivity/events/index/details.hbs +0 -1
- package/addon/templates/connectivity/events.hbs +0 -1
- package/addon/templates/connectivity/sensors.hbs +0 -1
- package/addon/templates/connectivity/telematics/index/details/devices.hbs +0 -1
- package/addon/templates/connectivity/telematics/index/details/events.hbs +0 -1
- package/addon/templates/connectivity/telematics/index/details/sensors.hbs +0 -1
- package/addon/templates/connectivity/telematics.hbs +0 -1
- package/addon/templates/connectivity/tracking.hbs +0 -1
- package/addon/templates/connectivity.hbs +0 -1
- package/addon/templates/maintenance/equipment/index/details/index.hbs +1 -2
- package/addon/templates/maintenance/equipment/index/details.hbs +15 -2
- package/addon/templates/maintenance/equipment/index/edit.hbs +12 -2
- package/addon/templates/maintenance/equipment/index/new.hbs +1 -2
- package/addon/templates/maintenance/equipment/index.hbs +48 -13
- package/addon/templates/maintenance/equipment.hbs +0 -1
- package/addon/templates/maintenance/maintenances/index/details/index.hbs +1 -0
- package/addon/templates/maintenance/maintenances/index/details.hbs +15 -0
- package/addon/templates/maintenance/maintenances/index/edit.hbs +12 -0
- package/addon/templates/maintenance/maintenances/index/new.hbs +11 -0
- package/addon/templates/maintenance/maintenances/index.hbs +14 -0
- package/addon/templates/maintenance/maintenances.hbs +1 -0
- package/addon/templates/maintenance/parts/index/details/index.hbs +1 -2
- package/addon/templates/maintenance/parts/index/details.hbs +15 -2
- package/addon/templates/maintenance/parts/index/edit.hbs +12 -2
- package/addon/templates/maintenance/parts/index/new.hbs +1 -2
- package/addon/templates/maintenance/parts/index.hbs +48 -13
- package/addon/templates/maintenance/parts.hbs +0 -1
- package/addon/templates/maintenance/schedules/index/details/index.hbs +1 -0
- package/addon/templates/maintenance/schedules/index/details/work-orders.hbs +39 -0
- package/addon/templates/maintenance/schedules/index/details.hbs +14 -0
- package/addon/templates/maintenance/schedules/index/edit.hbs +12 -0
- package/addon/templates/maintenance/schedules/index/new.hbs +11 -0
- package/addon/templates/maintenance/schedules/index.hbs +40 -0
- package/addon/templates/maintenance/schedules.hbs +1 -0
- package/addon/templates/maintenance/work-orders/index/details.hbs +2 -1
- package/addon/templates/maintenance/work-orders/index/edit.hbs +2 -4
- package/addon/templates/maintenance/work-orders/index/new.hbs +1 -2
- package/addon/templates/maintenance/work-orders.hbs +0 -1
- package/addon/templates/management/contacts/customers/edit.hbs +1 -2
- package/addon/templates/management/contacts/customers/new.hbs +1 -2
- package/addon/templates/management/contacts/customers.hbs +1 -1
- package/addon/templates/management/contacts/index/edit.hbs +1 -2
- package/addon/templates/management/contacts/index/new.hbs +1 -2
- package/addon/templates/management/drivers/index/details/orders.hbs +0 -1
- package/addon/templates/management/drivers/index/edit.hbs +1 -2
- package/addon/templates/management/drivers/index/new.hbs +1 -2
- package/addon/templates/management/fleets/index/edit.hbs +1 -2
- package/addon/templates/management/fleets/index/new.hbs +1 -2
- package/addon/templates/management/fleets/index.hbs +1 -2
- package/addon/templates/management/fuel-reports/index/edit.hbs +1 -2
- package/addon/templates/management/fuel-reports/index/new.hbs +1 -2
- package/addon/templates/management/fuel-reports/index.hbs +1 -2
- package/addon/templates/management/issues/index/edit.hbs +1 -2
- package/addon/templates/management/issues/index/new.hbs +1 -2
- package/addon/templates/management/issues/index.hbs +1 -2
- package/addon/templates/management/places/index/details/activity.hbs +0 -1
- package/addon/templates/management/places/index/details/comments.hbs +0 -1
- package/addon/templates/management/places/index/details/documents.hbs +0 -1
- package/addon/templates/management/places/index/details/map.hbs +0 -1
- package/addon/templates/management/places/index/details/operations.hbs +0 -1
- package/addon/templates/management/places/index/details/performance.hbs +0 -1
- package/addon/templates/management/places/index/details/rules.hbs +0 -1
- package/addon/templates/management/vehicles/index/details/equipment.hbs +0 -1
- package/addon/templates/management/vehicles/index/details/maintenance-history.hbs +2 -0
- package/addon/templates/management/vehicles/index/details/schedules.hbs +2 -0
- package/addon/templates/management/vehicles/index/details/work-orders.hbs +2 -0
- package/addon/templates/management/vehicles/index/details.hbs +1 -1
- package/addon/templates/management/vehicles/index/edit.hbs +1 -2
- package/addon/templates/management/vehicles/index/new.hbs +1 -2
- package/addon/templates/management/vendors/index/edit.hbs +1 -2
- package/addon/templates/management/vendors/index/new.hbs +1 -2
- package/addon/templates/management/vendors/index.hbs +1 -2
- package/addon/templates/management/vendors/integrated.hbs +1 -2
- package/addon/templates/operations/orchestrator.hbs +1 -0
- package/addon/templates/operations/orders/index.hbs +6 -1
- package/addon/templates/operations/scheduler/fleet-schedule.hbs +41 -0
- package/addon/templates/operations/scheduler/index.hbs +147 -88
- package/addon/templates/operations/scheduler.hbs +7 -1
- package/addon/templates/settings/avatars.hbs +1 -1
- package/addon/templates/settings/orchestrator.hbs +65 -0
- package/addon/templates/settings/payments/index.hbs +1 -5
- package/addon/templates/settings/scheduling.hbs +82 -0
- package/addon/utils/create-full-calendar-event-from-order.js +52 -14
- package/addon/utils/create-full-calendar-event-from-schedule-item.js +50 -0
- package/addon/utils/fleet-ops-options.js +254 -0
- package/addon/utils/route-colors.js +99 -0
- package/addon/utils/to-calendar-date.js +70 -0
- package/app/components/driver/schedule.js +1 -0
- package/app/components/maintenance/cost-panel.js +1 -0
- package/app/components/maintenance/panel-header.js +1 -0
- package/app/components/maintenance-schedule/details.js +1 -0
- package/app/components/maintenance-schedule/form.js +1 -0
- package/app/components/modals/add-driver-shift.js +1 -0
- package/app/components/modals/bulk-assign-orders.js +1 -0
- package/app/components/modals/driver-shift.js +1 -0
- package/app/components/modals/orchestrator-import.js +1 -0
- package/app/components/modals/scheduling-conflict.js +1 -0
- package/app/components/modals/send-work-order.js +1 -0
- package/app/components/modals/set-driver-availability.js +1 -0
- package/app/components/orchestrator/card-fields-settings.js +1 -0
- package/app/components/orchestrator/order-pool.js +1 -0
- package/app/components/orchestrator/phase-builder.js +1 -0
- package/app/components/orchestrator/plan-viewer.js +1 -0
- package/app/components/orchestrator/resource-panel.js +1 -0
- package/app/components/orchestrator-workbench.js +1 -0
- package/app/components/vehicle/details/maintenance-history.js +1 -0
- package/app/components/vehicle/details/schedules.js +1 -0
- package/app/components/vehicle/details/work-orders.js +1 -0
- package/app/controllers/operations/orchestrator.js +1 -0
- package/app/controllers/settings/orchestrator.js +1 -0
- package/app/controllers/settings/scheduling.js +1 -0
- package/app/routes/operations/orchestrator.js +1 -0
- package/app/routes/settings/orchestrator.js +1 -0
- package/app/routes/settings/scheduling.js +1 -0
- package/app/services/maintenance-schedule-actions.js +1 -0
- package/app/services/orchestration-engine-interface.js +1 -0
- package/app/services/orchestration-engine.js +1 -0
- package/app/services/order-allocation.js +1 -0
- package/app/services/scheduling.js +1 -0
- package/app/services/vroom-allocation-engine.js +1 -0
- package/app/templates/settings/scheduling.js +1 -0
- package/app/utils/create-full-calendar-event-from-schedule-item.js +1 -0
- package/app/utils/route-colors.js +1 -0
- package/composer.json +5 -3
- package/extension.json +1 -1
- package/package.json +6 -5
- package/server/config/fleetops.php +20 -1
- package/server/migrations/2025_08_28_054927_create_parts_table.php +2 -2
- package/server/migrations/2025_08_28_054932_add_public_id_to_maintenance_tables.php +45 -0
- package/server/migrations/2025_09_01_000001_create_maintenance_schedules_table.php +88 -0
- package/server/migrations/2026_04_01_000001_fix_monetary_columns_in_parts_table.php +48 -0
- package/server/migrations/2026_04_01_000003_add_photo_uuid_to_equipment_and_parts_tables.php +61 -0
- package/server/migrations/2026_04_01_000004_add_public_id_to_equipments_table.php +38 -0
- package/server/migrations/2026_04_01_000005_add_missing_columns_to_parts_table.php +67 -0
- package/server/migrations/2026_04_04_000001_add_reminder_offsets_to_maintenance_schedules.php +44 -0
- package/server/migrations/2026_04_08_000001_add_orchestrator_columns_to_vehicles_table.php +58 -0
- package/server/migrations/2026_04_08_000002_add_orchestrator_columns_to_drivers_table.php +41 -0
- package/server/migrations/2026_04_08_000003_add_orchestrator_columns_to_orders_table.php +38 -0
- package/server/migrations/2026_04_08_000004_add_orchestrator_columns_to_payloads_table.php +41 -0
- package/server/migrations/2026_04_08_000005_add_orchestrator_columns_to_waypoints_table.php +38 -0
- package/server/migrations/2026_04_09_000001_create_manifests_table.php +48 -0
- package/server/migrations/2026_04_09_000002_create_manifest_stops_table.php +48 -0
- package/server/migrations/2026_04_09_000003_add_manifest_uuid_to_orders_table.php +28 -0
- package/server/migrations/2026_04_13_000001_add_pod_notes_columns_to_waypoints_table.php +39 -0
- package/server/resources/views/mail/maintenance-schedule-reminder.blade.php +59 -0
- package/server/resources/views/mail/work-order-dispatched.blade.php +67 -0
- package/server/src/Auth/Schemas/FleetOps.php +44 -0
- package/server/src/Console/Commands/ProcessMaintenanceTriggers.php +150 -0
- package/server/src/Console/Commands/SendMaintenanceReminders.php +128 -0
- package/server/src/Http/Controllers/Internal/v1/DriverController.php +1 -0
- package/server/src/Http/Controllers/Internal/v1/EquipmentController.php +27 -0
- package/server/src/Http/Controllers/Internal/v1/LiveController.php +9 -2
- package/server/src/Http/Controllers/Internal/v1/MaintenanceController.php +165 -0
- package/server/src/Http/Controllers/Internal/v1/MaintenanceScheduleController.php +304 -0
- package/server/src/Http/Controllers/Internal/v1/ManifestController.php +138 -0
- package/server/src/Http/Controllers/Internal/v1/OrchestrationController.php +975 -0
- package/server/src/Http/Controllers/Internal/v1/OrderController.php +42 -0
- package/server/src/Http/Controllers/Internal/v1/PartController.php +27 -0
- package/server/src/Http/Controllers/Internal/v1/SettingController.php +118 -0
- package/server/src/Http/Controllers/Internal/v1/Traits/DriverSchedulingTrait.php +214 -0
- package/server/src/Http/Controllers/Internal/v1/WorkOrderController.php +68 -0
- package/server/src/Http/Resources/v1/Driver.php +1 -0
- package/server/src/Http/Resources/v1/Maintenance.php +138 -0
- package/server/src/Http/Resources/v1/MaintenanceSchedule.php +137 -0
- package/server/src/Http/Resources/v1/Orchestrator/Order.php +116 -0
- package/server/src/Http/Resources/v1/Order.php +7 -4
- package/server/src/Http/Resources/v1/Waypoint.php +7 -0
- package/server/src/Http/Resources/v1/WorkOrder.php +136 -0
- package/server/src/Imports/EquipmentImport.php +32 -0
- package/server/src/Imports/MaintenanceImport.php +32 -0
- package/server/src/Imports/MaintenanceScheduleImport.php +32 -0
- package/server/src/Imports/PartImport.php +32 -0
- package/server/src/Imports/WorkOrderImport.php +32 -0
- package/server/src/Jobs/ProcessAllocationJob.php +119 -0
- package/server/src/Listeners/HandleDeliveryCompletion.php +47 -0
- package/server/src/Listeners/NotifyDriverOnShiftChange.php +63 -0
- package/server/src/Mail/MaintenanceScheduleReminder.php +68 -0
- package/server/src/Mail/WorkOrderDispatched.php +58 -0
- package/server/src/Models/Asset.php +2 -2
- package/server/src/Models/Device.php +1 -1
- package/server/src/Models/Driver.php +82 -4
- package/server/src/Models/Equipment.php +62 -2
- package/server/src/Models/Maintenance.php +127 -9
- package/server/src/Models/MaintenanceSchedule.php +353 -0
- package/server/src/Models/Manifest.php +214 -0
- package/server/src/Models/ManifestStop.php +162 -0
- package/server/src/Models/Order.php +70 -0
- package/server/src/Models/OrderConfig.php +5 -2
- package/server/src/Models/Part.php +69 -3
- package/server/src/Models/Payload.php +7 -2
- package/server/src/Models/Place.php +1 -1
- package/server/src/Models/Sensor.php +1 -1
- package/server/src/Models/ServiceQuote.php +1 -1
- package/server/src/Models/Vehicle.php +20 -1
- package/server/src/Models/Warranty.php +1 -1
- package/server/src/Models/Waypoint.php +7 -1
- package/server/src/Models/WorkOrder.php +122 -12
- package/server/src/Notifications/DriverShiftChanged.php +110 -0
- package/server/src/Observers/WorkOrderObserver.php +107 -0
- package/server/src/Orchestration/Contracts/OrchestrationEngineInterface.php +63 -0
- package/server/src/Orchestration/Engines/DriverAssignmentEngine.php +265 -0
- package/server/src/Orchestration/Engines/GreedyOrchestrationEngine.php +155 -0
- package/server/src/Orchestration/Engines/RouteSequencingEngine.php +272 -0
- package/server/src/Orchestration/Engines/VroomOrchestrationEngine.php +192 -0
- package/server/src/Orchestration/OrchestrationEngineRegistry.php +83 -0
- package/server/src/Orchestration/Support/OrchestrationPayloadBuilder.php +290 -0
- package/server/src/Providers/EventServiceProvider.php +7 -1
- package/server/src/Providers/FleetOpsServiceProvider.php +42 -15
- package/server/src/routes.php +65 -4
- package/translations/ar-ae.yml +44 -12
- package/translations/bg-bg.yaml +51 -10
- package/translations/en-us.yaml +444 -1
- package/translations/fr-fr.yaml +51 -10
- package/translations/mn-mn.yaml +51 -10
- package/translations/pt-br.yaml +51 -10
- package/translations/ru-ru.yaml +51 -10
- package/translations/vi-vn.yaml +48 -12
package/translations/en-us.yaml
CHANGED
|
@@ -32,6 +32,8 @@ common:
|
|
|
32
32
|
select-resource-filter-by: Select {resource} to filter by
|
|
33
33
|
table-view: Table View
|
|
34
34
|
grid-view: Grid View
|
|
35
|
+
calendar-view: Calendar View
|
|
36
|
+
change-layout: Change Layout
|
|
35
37
|
livemap: Live map
|
|
36
38
|
tracking: Tracking
|
|
37
39
|
activity: Activity
|
|
@@ -41,6 +43,17 @@ common:
|
|
|
41
43
|
edit-address: Edit Address
|
|
42
44
|
new-address: New Address
|
|
43
45
|
select-address: Select Address
|
|
46
|
+
save: Save
|
|
47
|
+
save-changes: Save Changes
|
|
48
|
+
done: Done
|
|
49
|
+
delete: Delete
|
|
50
|
+
overview: Overview
|
|
51
|
+
notes: Notes
|
|
52
|
+
schedule: Schedule
|
|
53
|
+
optional: Optional
|
|
54
|
+
unauthorized-access: You are not authorized to access this resource.
|
|
55
|
+
online: Online
|
|
56
|
+
refresh: Refresh
|
|
44
57
|
|
|
45
58
|
menu:
|
|
46
59
|
operations: Operations
|
|
@@ -59,9 +72,11 @@ menu:
|
|
|
59
72
|
fuel-reports: Fuel Reports
|
|
60
73
|
issues: Issues
|
|
61
74
|
maintenance: Maintenance
|
|
75
|
+
schedules: Schedules
|
|
62
76
|
work-orders: Work Orders
|
|
63
77
|
equipment: Equipment
|
|
64
78
|
parts: Parts
|
|
79
|
+
maintenance-history: Maintenance History
|
|
65
80
|
connectivity: Connectivity
|
|
66
81
|
telematics: Telematics
|
|
67
82
|
devices: Devices
|
|
@@ -78,6 +93,10 @@ menu:
|
|
|
78
93
|
custom-fields: Custom Fields
|
|
79
94
|
order-board: Order Board
|
|
80
95
|
avatars: Avatars
|
|
96
|
+
scheduling: Scheduling
|
|
97
|
+
maintenances: Maintenances
|
|
98
|
+
orchestrator: Orchestrator
|
|
99
|
+
orchestrator-settings: Orchestrator Settings
|
|
81
100
|
|
|
82
101
|
resource:
|
|
83
102
|
asset: Asset
|
|
@@ -126,6 +145,8 @@ resource:
|
|
|
126
145
|
issues: Issues
|
|
127
146
|
maintenance: Maintenance
|
|
128
147
|
maintenances: Maintenances
|
|
148
|
+
maintenance-schedule: Maintenance Schedule
|
|
149
|
+
maintenance-schedules: Maintenance Schedules
|
|
129
150
|
order-config: Order Config
|
|
130
151
|
order-configs: Order Configs
|
|
131
152
|
order: Order
|
|
@@ -245,6 +266,21 @@ column:
|
|
|
245
266
|
current-job: Current Job
|
|
246
267
|
last-seen: Last Seen
|
|
247
268
|
place: Place
|
|
269
|
+
subject: Subject
|
|
270
|
+
summary: Summary
|
|
271
|
+
total-cost: Total Cost
|
|
272
|
+
due-at: Due At
|
|
273
|
+
serial-number: Serial Number
|
|
274
|
+
manufacturer: Manufacturer
|
|
275
|
+
part-number: Part Number
|
|
276
|
+
quantity-on-hand: Quantity on Hand
|
|
277
|
+
quantity: Quantity
|
|
278
|
+
unit-cost: Unit Cost
|
|
279
|
+
code: Code
|
|
280
|
+
interval: Interval
|
|
281
|
+
next-due: Next Due
|
|
282
|
+
asset: Asset
|
|
283
|
+
performed-by: Performed By
|
|
248
284
|
|
|
249
285
|
map:
|
|
250
286
|
visibility-controls:
|
|
@@ -668,6 +704,7 @@ order:
|
|
|
668
704
|
assign-text: You are about to assign a new driver ({driverName}) to Order {orderId}. Click continue to confirm driver.
|
|
669
705
|
assign-button: Continue and assign driver
|
|
670
706
|
date: Date scheduled
|
|
707
|
+
date-created: Date created
|
|
671
708
|
driver-assigned: Driver
|
|
672
709
|
vehicle-assigned: Vehicle
|
|
673
710
|
no-driver: No Driver
|
|
@@ -904,6 +941,9 @@ vehicle:
|
|
|
904
941
|
year: Year
|
|
905
942
|
actions:
|
|
906
943
|
locate-vehicle: Locate Vehicle on Map
|
|
944
|
+
schedule-maintenance: Schedule Maintenance
|
|
945
|
+
create-work-order: Create Work Order
|
|
946
|
+
log-maintenance: Log Maintenance
|
|
907
947
|
|
|
908
948
|
vendor:
|
|
909
949
|
fields:
|
|
@@ -1114,7 +1154,132 @@ scheduler:
|
|
|
1114
1154
|
scheduled-orders: Scheduled Orders
|
|
1115
1155
|
unauthorized-to-schedule: You are not authorized to schedule orders.
|
|
1116
1156
|
scheduling-for: Scheduling for {orderId}
|
|
1117
|
-
|
|
1157
|
+
add-shift: Add Shift
|
|
1158
|
+
create-shift: Create Shift
|
|
1159
|
+
edit-shift: Edit Shift
|
|
1160
|
+
delete-shift: Delete Shift
|
|
1161
|
+
delete-shift-confirm: Are you sure you want to delete this shift? This action cannot be undone.
|
|
1162
|
+
shift-created: Shift created successfully.
|
|
1163
|
+
shift-updated: Shift updated successfully.
|
|
1164
|
+
shift-title: Shift Title
|
|
1165
|
+
shift-title-placeholder: e.g. Morning Delivery Run
|
|
1166
|
+
shift-start: Shift Start
|
|
1167
|
+
shift-end: Shift End
|
|
1168
|
+
shift-notes-placeholder: Optional notes about this shift
|
|
1169
|
+
select-start-datetime: Select start date & time
|
|
1170
|
+
select-end-datetime: Select end date & time
|
|
1171
|
+
select-driver: Select Driver
|
|
1172
|
+
upcoming-shifts: Upcoming Shifts
|
|
1173
|
+
no-upcoming-shifts: No upcoming shifts scheduled.
|
|
1174
|
+
hours-of-service: Hours of Service
|
|
1175
|
+
daily-driving-hours: Daily Driving Hours
|
|
1176
|
+
weekly-hours: Weekly Hours
|
|
1177
|
+
compliance-status: Compliance Status
|
|
1178
|
+
set-availability: Set Availability
|
|
1179
|
+
availability-set: Availability saved successfully.
|
|
1180
|
+
availability-time-off: Availability & Time Off
|
|
1181
|
+
no-availability-restrictions: No availability restrictions set.
|
|
1182
|
+
available: Available
|
|
1183
|
+
unavailable: Unavailable
|
|
1184
|
+
unavailable-time-off: Unavailable / Time Off
|
|
1185
|
+
availability-type: Availability Type
|
|
1186
|
+
request-time-off: Request Time Off
|
|
1187
|
+
submit-request: Submit Request
|
|
1188
|
+
time-off-requested: Time off request submitted.
|
|
1189
|
+
delete-availability: Delete Availability
|
|
1190
|
+
delete-availability-confirm: Are you sure you want to remove this availability record?
|
|
1191
|
+
availability-deleted: Availability record removed.
|
|
1192
|
+
start-date: Start Date
|
|
1193
|
+
end-date: End Date
|
|
1194
|
+
select-start-date: Select start date
|
|
1195
|
+
select-end-date: Select end date
|
|
1196
|
+
reason: Reason
|
|
1197
|
+
reason-placeholder: e.g. Personal appointment
|
|
1198
|
+
notes-placeholder: Optional additional notes
|
|
1199
|
+
shift: Shift
|
|
1200
|
+
add-shift-hint: Click "Add Shift" to schedule a new shift.
|
|
1201
|
+
time-off-exceptions: Time Off & Exceptions
|
|
1202
|
+
no-exceptions: No time off or exceptions recorded.
|
|
1203
|
+
exception-approved: Exception approved.
|
|
1204
|
+
exception-rejected: Exception rejected.
|
|
1205
|
+
exception-deleted: Exception removed.
|
|
1206
|
+
delete-exception: Delete Exception
|
|
1207
|
+
delete-exception-confirm: Are you sure you want to remove this exception?
|
|
1208
|
+
approve: Approve
|
|
1209
|
+
reject: Reject
|
|
1210
|
+
recurring-schedule-created: Recurring schedule created and shifts materialised.
|
|
1211
|
+
recurring-schedule: Recurring Schedule
|
|
1212
|
+
is-recurring: Recurring
|
|
1213
|
+
recurrence-pattern: Recurrence Pattern
|
|
1214
|
+
recurrence-start-date: Starts On
|
|
1215
|
+
recurrence-end-date: Ends On (optional)
|
|
1216
|
+
template-name: Template Name
|
|
1217
|
+
template-name-placeholder: e.g. Standard Week
|
|
1218
|
+
schedule-name: Schedule Name
|
|
1219
|
+
schedule-name-placeholder: e.g. Standard Week
|
|
1220
|
+
one-off-shift: One-off Shift
|
|
1221
|
+
one-off-shift-help: Toggle on to add a single shift on a specific date and time instead of a recurring schedule.
|
|
1222
|
+
template-color: Color
|
|
1223
|
+
shift-start-time: Shift Start Time
|
|
1224
|
+
shift-end-time: Shift End Time
|
|
1225
|
+
break-start-time: Break Start Time
|
|
1226
|
+
break-end-time: Break End Time
|
|
1227
|
+
day-monday: Monday
|
|
1228
|
+
day-tuesday: Tuesday
|
|
1229
|
+
day-wednesday: Wednesday
|
|
1230
|
+
day-thursday: Thursday
|
|
1231
|
+
day-friday: Friday
|
|
1232
|
+
day-saturday: Saturday
|
|
1233
|
+
day-sunday: Sunday
|
|
1234
|
+
frequency-daily: Daily
|
|
1235
|
+
frequency-weekly: Weekly
|
|
1236
|
+
frequency-monthly: Monthly
|
|
1237
|
+
today: Today
|
|
1238
|
+
orders-tab: Order Schedule
|
|
1239
|
+
fleet-schedule-tab: Fleet Schedule
|
|
1240
|
+
break-start: Break Start
|
|
1241
|
+
break-end: Break End
|
|
1242
|
+
select-break-start: Select break start time
|
|
1243
|
+
select-break-end: Select break end time
|
|
1244
|
+
select-date: Select date
|
|
1245
|
+
working-days: Working Days
|
|
1246
|
+
recurrence-start: Starts On
|
|
1247
|
+
recurrence-end: Ends On
|
|
1248
|
+
recurring-schedule-help: Define a recurring shift pattern using days and times. Shifts will be automatically created for the driver.
|
|
1249
|
+
shift-deleted: Shift deleted successfully.
|
|
1250
|
+
day-mon: Mon
|
|
1251
|
+
day-tue: Tue
|
|
1252
|
+
day-wed: Wed
|
|
1253
|
+
day-thu: Thu
|
|
1254
|
+
day-fri: Fri
|
|
1255
|
+
day-sat: Sat
|
|
1256
|
+
day-sun: Sun
|
|
1257
|
+
view-day: Day
|
|
1258
|
+
view-week: Week
|
|
1259
|
+
undo: Undo last action
|
|
1260
|
+
redo: Redo last action
|
|
1261
|
+
search-orders: Search orders...
|
|
1262
|
+
select-all: Select all
|
|
1263
|
+
all-scheduled: All orders scheduled
|
|
1264
|
+
not-scheduled: Not Scheduled
|
|
1265
|
+
expand-sidebar: Expand sidebar
|
|
1266
|
+
collapse-sidebar: Collapse sidebar
|
|
1267
|
+
bulk-assign: Assign {count} orders
|
|
1268
|
+
bulk-assign-title: Bulk Assign {count} Orders
|
|
1269
|
+
bulk-assign-success: "{count} orders assigned successfully."
|
|
1270
|
+
bulk-assign-order-count: "{count} orders selected for assignment"
|
|
1271
|
+
bulk-assign-spacing-hint: Orders will be scheduled sequentially starting from the selected date and time, spaced by estimated duration.
|
|
1272
|
+
assign-to-driver: Assign to Driver
|
|
1273
|
+
assign-orders: Assign Orders
|
|
1274
|
+
orders-to-assign: "{count} orders to assign"
|
|
1275
|
+
scheduled-date: Scheduled Date
|
|
1276
|
+
conflict-title: Scheduling Conflict Detected
|
|
1277
|
+
conflict-description: "{orderTracking} overlaps with an existing order for {driverName}."
|
|
1278
|
+
conflicting-orders: Conflicting Orders
|
|
1279
|
+
conflict-resolution-prompt: How would you like to resolve this conflict?
|
|
1280
|
+
auto-adjust: Auto-Adjust Time
|
|
1281
|
+
assign-anyway: Assign Anyway
|
|
1282
|
+
clear-selection: Clear selection
|
|
1118
1283
|
modals:
|
|
1119
1284
|
new-custom-field-group:
|
|
1120
1285
|
modal-title: Create a new custom field group
|
|
@@ -1716,3 +1881,281 @@ settings:
|
|
|
1716
1881
|
button-continue: Continue
|
|
1717
1882
|
button-start: Start onboard now
|
|
1718
1883
|
button-in-progress: Onboard in progress
|
|
1884
|
+
scheduling:
|
|
1885
|
+
scheduling-settings: Scheduling Settings
|
|
1886
|
+
materialisation: Materialisation
|
|
1887
|
+
horizon-days: Schedule Horizon (Days)
|
|
1888
|
+
horizon-days-help: How many days ahead to generate shift items when a schedule template is applied.
|
|
1889
|
+
default-shift-duration: Default Shift Duration (Hours)
|
|
1890
|
+
default-shift-duration-help: The default number of hours for a shift when no end time is specified.
|
|
1891
|
+
hours-of-service: Hours of Service Limits
|
|
1892
|
+
hos-daily-limit: Daily Driving Limit (Hours)
|
|
1893
|
+
hos-daily-limit-help: Maximum hours a driver is permitted to drive in a single day.
|
|
1894
|
+
hos-weekly-limit: Weekly Driving Limit (Hours)
|
|
1895
|
+
hos-weekly-limit-help: Maximum hours a driver is permitted to drive in a rolling 7-day period.
|
|
1896
|
+
behaviour: Behaviour
|
|
1897
|
+
auto-activate-schedule: Auto-Activate Schedule
|
|
1898
|
+
auto-activate-schedule-help: Automatically transition a schedule from Draft to Active when the first shift is created.
|
|
1899
|
+
notify-drivers: Notify Drivers on Shift Changes
|
|
1900
|
+
notify-drivers-help: Send a push notification to drivers when their shifts are created, updated, or deleted.
|
|
1901
|
+
schedule-templates: Reusable Schedule Templates
|
|
1902
|
+
no-templates: No reusable templates have been created yet.
|
|
1903
|
+
new-template: New Template
|
|
1904
|
+
edit-template: Edit Template
|
|
1905
|
+
delete-template: Delete Template
|
|
1906
|
+
delete-template-confirm: Are you sure you want to delete the template "{name}"? This will not affect existing schedules.
|
|
1907
|
+
template-deleted: Template deleted successfully.
|
|
1908
|
+
settings-saved: Scheduling settings saved.
|
|
1909
|
+
maintenance-schedule:
|
|
1910
|
+
actions:
|
|
1911
|
+
trigger-now: Trigger Work Order Now
|
|
1912
|
+
pause: Pause Schedule
|
|
1913
|
+
resume: Resume Schedule
|
|
1914
|
+
work-order:
|
|
1915
|
+
actions:
|
|
1916
|
+
view: View Work Order
|
|
1917
|
+
edit: Edit Work Order
|
|
1918
|
+
delete: Delete Work Order
|
|
1919
|
+
maintenance:
|
|
1920
|
+
actions:
|
|
1921
|
+
view: View Maintenance Record
|
|
1922
|
+
edit: Edit Maintenance Record
|
|
1923
|
+
delete: Delete Maintenance Record
|
|
1924
|
+
equipment:
|
|
1925
|
+
actions:
|
|
1926
|
+
view: View Equipment
|
|
1927
|
+
edit: Edit Equipment
|
|
1928
|
+
delete: Delete Equipment
|
|
1929
|
+
part:
|
|
1930
|
+
actions:
|
|
1931
|
+
view: View Part
|
|
1932
|
+
edit: Edit Part
|
|
1933
|
+
delete: Delete Part
|
|
1934
|
+
|
|
1935
|
+
orchestrator:
|
|
1936
|
+
settings-title: Orchestrator Settings
|
|
1937
|
+
engine-settings: Allocation Engine
|
|
1938
|
+
active-engine: Active Allocation Engine
|
|
1939
|
+
active-engine-help: Select which allocation engine is used to assign orders to drivers and vehicles.
|
|
1940
|
+
auto-allocate-on-create: Auto-Allocate on Order Creation
|
|
1941
|
+
auto-allocate-on-create-label: Automatically run allocation when a new order is created.
|
|
1942
|
+
auto-reallocate-on-complete: Auto Re-Allocate on Delivery Completion
|
|
1943
|
+
auto-reallocate-on-complete-label: Re-run allocation when a delivery is completed to fill freed capacity.
|
|
1944
|
+
constraint-settings: Allocation Constraints
|
|
1945
|
+
max-travel-time: Max Travel Time (seconds)
|
|
1946
|
+
max-travel-time-help: Maximum travel time in seconds a driver may be assigned. Leave 0 for no limit.
|
|
1947
|
+
balance-workload: Balance Workload
|
|
1948
|
+
balance-workload-label: Distribute orders evenly across available drivers and vehicles.
|
|
1949
|
+
settings-saved: Orchestrator settings saved.
|
|
1950
|
+
workbench-title: Orchestrator Workbench
|
|
1951
|
+
unassigned-orders: Unassigned Orders
|
|
1952
|
+
no-unassigned-orders: No unassigned orders — all caught up!
|
|
1953
|
+
run-allocation: Run Orchestrator
|
|
1954
|
+
running: Running…
|
|
1955
|
+
plan-ready: Plan ready — review and commit.
|
|
1956
|
+
commit-plan: Commit Plan
|
|
1957
|
+
discard-plan: Discard
|
|
1958
|
+
committed: "Orchestration committed — {count} order(s) assigned."
|
|
1959
|
+
committed-badge: Plan committed
|
|
1960
|
+
overridden: Overridden
|
|
1961
|
+
on-shift: On Shift
|
|
1962
|
+
empty-state-title: No orchestration plan yet
|
|
1963
|
+
empty-state-body: Click "Run Orchestrator" to generate an optimized assignment plan for unassigned orders.
|
|
1964
|
+
unassigned-warning: Some orders could not be assigned — insufficient vehicle capacity or no drivers on shift.
|
|
1965
|
+
# Workbench toolbar & options
|
|
1966
|
+
run-orchestration: Run Orchestrator
|
|
1967
|
+
options: Options
|
|
1968
|
+
mode: Mode
|
|
1969
|
+
mode-allocate: Allocate Orders
|
|
1970
|
+
mode-optimize: Optimize Routes
|
|
1971
|
+
engine: Engine
|
|
1972
|
+
respect-skills: Respect Skills
|
|
1973
|
+
respect-capacity: Respect Capacity
|
|
1974
|
+
return-to-depot: Return to Depot
|
|
1975
|
+
# Plan state
|
|
1976
|
+
unassigned-count: "Unassigned:"
|
|
1977
|
+
clear: Clear
|
|
1978
|
+
# Order pool
|
|
1979
|
+
search-orders: Search orders…
|
|
1980
|
+
filter-all: All
|
|
1981
|
+
filter-scheduled: Scheduled
|
|
1982
|
+
filter-urgent: Urgent
|
|
1983
|
+
filter-today: Today
|
|
1984
|
+
filter-unassigned: Unassigned
|
|
1985
|
+
filter-imported: Imported
|
|
1986
|
+
advanced-filters: Advanced Filters
|
|
1987
|
+
filter-country: Country
|
|
1988
|
+
filter-type: Order Type
|
|
1989
|
+
filter-status: Status
|
|
1990
|
+
filter-date: Scheduled Date
|
|
1991
|
+
filter-country-placeholder: All countries
|
|
1992
|
+
filter-type-placeholder: All types
|
|
1993
|
+
filter-status-placeholder: All statuses
|
|
1994
|
+
filter-date-placeholder: Any date
|
|
1995
|
+
clear-filters: Clear Filters
|
|
1996
|
+
no-address: No address
|
|
1997
|
+
selected: selected
|
|
1998
|
+
clear-selection: Clear
|
|
1999
|
+
# Panel toggles
|
|
2000
|
+
show-orders: Show Order Pool
|
|
2001
|
+
hide-orders: Hide Order Pool
|
|
2002
|
+
show-drivers: Show Resources
|
|
2003
|
+
hide-drivers: Hide Resources
|
|
2004
|
+
# Driver / resource panel
|
|
2005
|
+
available-drivers: Available Drivers
|
|
2006
|
+
available-vehicles: Available Vehicles
|
|
2007
|
+
no-available-drivers: No drivers available right now.
|
|
2008
|
+
no-available-vehicles: No vehicles available right now.
|
|
2009
|
+
no-search-results: No results match your search.
|
|
2010
|
+
search-drivers: Search drivers...
|
|
2011
|
+
search-vehicles: Search vehicles...
|
|
2012
|
+
filter-online: Online
|
|
2013
|
+
filter-offline: Offline
|
|
2014
|
+
filter-on-shift: On Job
|
|
2015
|
+
filter-on-job: On Job
|
|
2016
|
+
filter-active: Active
|
|
2017
|
+
filter-no-driver: No Driver
|
|
2018
|
+
proposed-routes: Proposed Routes
|
|
2019
|
+
stops: stops
|
|
2020
|
+
route: Route
|
|
2021
|
+
drivers-selected: drivers selected
|
|
2022
|
+
vehicles-selected: vehicles selected
|
|
2023
|
+
drop-orders-here: Drop orders here
|
|
2024
|
+
# Import modal
|
|
2025
|
+
import-orders: Import Orders
|
|
2026
|
+
import-step-upload: Upload
|
|
2027
|
+
import-step-map: Map Columns
|
|
2028
|
+
import-step-preview: Preview & Import
|
|
2029
|
+
drop-file-here: Drop your CSV or Excel file here
|
|
2030
|
+
or: or
|
|
2031
|
+
browse-file: Browse file
|
|
2032
|
+
accepted-formats: "Accepted: .csv, .xlsx, .xls"
|
|
2033
|
+
remove-file: Remove file
|
|
2034
|
+
download-template: Download Import Template
|
|
2035
|
+
download-template-desc: Use our template to ensure your data imports correctly.
|
|
2036
|
+
download: Download
|
|
2037
|
+
next: Next
|
|
2038
|
+
back: Back
|
|
2039
|
+
map-columns-title: Map Columns
|
|
2040
|
+
map-columns-desc: "Map the columns in"
|
|
2041
|
+
col-target-field: Target Field
|
|
2042
|
+
col-your-spreadsheet: Your Spreadsheet
|
|
2043
|
+
mapped: mapped
|
|
2044
|
+
mapping-required-hint: "Dropoff Street 1 is required before you can continue."
|
|
2045
|
+
select-column: "— skip —"
|
|
2046
|
+
data-preview: "First 3 orders preview:"
|
|
2047
|
+
preview-import: Preview Import
|
|
2048
|
+
preview-desc: "{count} orders ready to import"
|
|
2049
|
+
errors: errors
|
|
2050
|
+
all-rows-valid: All rows valid
|
|
2051
|
+
validation-warning: "{count} order(s) have errors and will be skipped."
|
|
2052
|
+
import-confirm: Confirm Import
|
|
2053
|
+
importing: "Importing…"
|
|
2054
|
+
col-pickup: Pickup
|
|
2055
|
+
col-dropoff: Dropoff
|
|
2056
|
+
col-scheduled: Scheduled
|
|
2057
|
+
col-weight: Weight
|
|
2058
|
+
col-customer: Customer
|
|
2059
|
+
col-status: Status
|
|
2060
|
+
col-preview-ref: Ref / ID
|
|
2061
|
+
col-preview-type: Type
|
|
2062
|
+
col-preview-facilitator: Facilitator
|
|
2063
|
+
col-preview-vehicle: Vehicle
|
|
2064
|
+
col-preview-driver: Driver
|
|
2065
|
+
col-preview-entities: Items
|
|
2066
|
+
col-preview-multi-stop: "{count} stops"
|
|
2067
|
+
col-preview-pickup-dropoff: Pickup & Dropoff
|
|
2068
|
+
error: Error
|
|
2069
|
+
valid: Valid
|
|
2070
|
+
import-success: "{count} order(s) imported successfully."
|
|
2071
|
+
no-valid-rows: No valid orders to import.
|
|
2072
|
+
invalid-file-type: "Please upload a .csv, .xlsx or .xls file."
|
|
2073
|
+
parse-error: Could not parse the file. Please check the format.
|
|
2074
|
+
read-error: Could not read the file.
|
|
2075
|
+
empty-file: The file appears to be empty.
|
|
2076
|
+
missing-dropoff: Dropoff Street 1 is required.
|
|
2077
|
+
stops-count: "{count} stops"
|
|
2078
|
+
# Order card fields
|
|
2079
|
+
pickup: Pickup
|
|
2080
|
+
dropoff: Dropoff
|
|
2081
|
+
scheduled: Scheduled
|
|
2082
|
+
customer: Customer
|
|
2083
|
+
driver-assigned: Driver Assigned
|
|
2084
|
+
vehicle-assigned: Vehicle Assigned
|
|
2085
|
+
no-vehicle-assigned: No vehicle assigned
|
|
2086
|
+
no-driver-assigned: No driver assigned
|
|
2087
|
+
created: Created
|
|
2088
|
+
# Phase builder
|
|
2089
|
+
phases: Phases
|
|
2090
|
+
phases-description: Compose a multi-step orchestration run. Each phase runs a specific mode in sequence.
|
|
2091
|
+
add-phase: Add Phase
|
|
2092
|
+
no-phases: No phases configured. Add a phase to get started.
|
|
2093
|
+
phase-n: "Phase {n}"
|
|
2094
|
+
phase-label: Phase Label
|
|
2095
|
+
save-phase: Save Phase
|
|
2096
|
+
select-phase-to-edit: Select a phase to edit its settings.
|
|
2097
|
+
run-phases: "Run {count} Phase(s)"
|
|
2098
|
+
include-order-statuses: Include Order Statuses
|
|
2099
|
+
constraints: Constraints
|
|
2100
|
+
auto-commit: Auto-commit after phase
|
|
2101
|
+
# Allocation modes
|
|
2102
|
+
mode-assign-vehicles: Assign Vehicles
|
|
2103
|
+
mode-assign-drivers: Assign Drivers
|
|
2104
|
+
mode-optimize-routes: Optimize Routes
|
|
2105
|
+
# Order statuses for phase filter
|
|
2106
|
+
status-created: Created
|
|
2107
|
+
status-dispatched: Dispatched
|
|
2108
|
+
status-started: Started
|
|
2109
|
+
# Card fields settings
|
|
2110
|
+
card-fields: Card Fields
|
|
2111
|
+
card-fields-description: Configure which fields are displayed on order cards in the workbench. Fields are grouped by order config so you can tailor the view for each order type.
|
|
2112
|
+
card-fields-saved: Order card fields saved.
|
|
2113
|
+
save-card-fields: Save Card Fields
|
|
2114
|
+
standard-fields: Standard Fields
|
|
2115
|
+
standard-fields-description: These fields appear on every order card regardless of order type.
|
|
2116
|
+
config-fields-description: "Custom fields for {name} orders."
|
|
2117
|
+
meta-fields: Meta Fields
|
|
2118
|
+
meta-fields-description: Free-form metadata keys pushed by integrations.
|
|
2119
|
+
no-custom-fields: No custom fields defined for this order config.
|
|
2120
|
+
field-tracking: Tracking Number
|
|
2121
|
+
field-status: Status
|
|
2122
|
+
field-scheduled-at: Scheduled At
|
|
2123
|
+
field-customer: Customer
|
|
2124
|
+
field-type: Type
|
|
2125
|
+
field-notes: Notes
|
|
2126
|
+
field-priority: Priority
|
|
2127
|
+
field-dropoff: Dropoff Address
|
|
2128
|
+
field-pickup: Pickup Address
|
|
2129
|
+
# Resource panel filters
|
|
2130
|
+
filter-available: Available
|
|
2131
|
+
# Plan viewer
|
|
2132
|
+
vehicle: Vehicle
|
|
2133
|
+
expand-all: Expand all
|
|
2134
|
+
tab-routes: Routes
|
|
2135
|
+
tab-timeline: Timeline
|
|
2136
|
+
collapse-all: Collapse all
|
|
2137
|
+
collapse-route: Collapse route
|
|
2138
|
+
expand-route: Expand route
|
|
2139
|
+
no-plan: Run the orchestrator to see the proposed plan.
|
|
2140
|
+
unassigned-description: These orders could not be assigned. They will remain in the queue for re-allocation.
|
|
2141
|
+
unassigned: unassigned
|
|
2142
|
+
# General additions
|
|
2143
|
+
vehicles: Vehicles
|
|
2144
|
+
drivers: Drivers
|
|
2145
|
+
orders: Orders
|
|
2146
|
+
cancel: Cancel
|
|
2147
|
+
no-vehicles: No vehicles found.
|
|
2148
|
+
no-drivers: No drivers found.
|
|
2149
|
+
no-orders: No orders found.
|
|
2150
|
+
expand-panel: Expand panel
|
|
2151
|
+
collapse-panel: Collapse panel
|
|
2152
|
+
# Run error state
|
|
2153
|
+
run-failed-title: No assignments returned
|
|
2154
|
+
try-again: Try Again
|
|
2155
|
+
change-resources: Change Resources
|
|
2156
|
+
no-assignments-returned: The orchestrator could not assign any orders. Check that vehicles have sufficient capacity and drivers are on shift.
|
|
2157
|
+
# Stop list labels
|
|
2158
|
+
stop-type-pickup: Pickup
|
|
2159
|
+
stop-type-dropoff: Dropoff
|
|
2160
|
+
pod-required: POD
|
|
2161
|
+
no-pod: No POD
|
package/translations/fr-fr.yaml
CHANGED
|
@@ -28,6 +28,8 @@ common:
|
|
|
28
28
|
select-resource-filter-by: Sélectionner {resource} pour filtrer
|
|
29
29
|
table-view: Vue tableau
|
|
30
30
|
grid-view: Vue grille
|
|
31
|
+
calendar-view: Vue Calendrier
|
|
32
|
+
change-layout: Changer la mise en page
|
|
31
33
|
livemap: Carte en direct
|
|
32
34
|
tracking: Suivi
|
|
33
35
|
activity: Activité
|
|
@@ -37,6 +39,13 @@ common:
|
|
|
37
39
|
edit-address: Modifier l'adresse
|
|
38
40
|
new-address: Nouvelle adresse
|
|
39
41
|
select-address: Sélectionner une adresse
|
|
42
|
+
save: Save
|
|
43
|
+
save-changes: Save Changes
|
|
44
|
+
done: Done
|
|
45
|
+
delete: Delete
|
|
46
|
+
overview: Overview
|
|
47
|
+
notes: Notes
|
|
48
|
+
schedule: Schedule
|
|
40
49
|
menu:
|
|
41
50
|
operations: Opérations
|
|
42
51
|
dashboard: Tableau de bord
|
|
@@ -439,7 +448,6 @@ device:
|
|
|
439
448
|
warranty: Garantie
|
|
440
449
|
warranty-placeholder: Sélectionnez la garantie
|
|
441
450
|
notes: Notes
|
|
442
|
-
notes-placeholder: Notes
|
|
443
451
|
entity:
|
|
444
452
|
fields:
|
|
445
453
|
declare: Déclarer
|
|
@@ -573,7 +581,6 @@ order:
|
|
|
573
581
|
invalid-coordinates: Coordonnées invalides !
|
|
574
582
|
items-drop: Articles déposés à
|
|
575
583
|
loading-message: Chargement des devis de service...
|
|
576
|
-
notes-placeholder: Entrez les notes de la commande ici....
|
|
577
584
|
notes-title: Notes
|
|
578
585
|
optimize-route: Optimiser l'itinéraire
|
|
579
586
|
optimize-route-help-text: Fleetbase optimisera automatiquement l'itinéraire.
|
|
@@ -705,7 +712,6 @@ order:
|
|
|
705
712
|
vehicle-assigned: Véhicule
|
|
706
713
|
no-driver: Aucun conducteur
|
|
707
714
|
no-vehicle: Aucun véhicule
|
|
708
|
-
select-driver: Sélectionner un conducteur
|
|
709
715
|
select-vehicle: Sélectionner un véhicule
|
|
710
716
|
kanban:
|
|
711
717
|
status-updated: L'activité de la commande a été mise à jour au statut {status}.
|
|
@@ -962,7 +968,6 @@ vehicle:
|
|
|
962
968
|
make: Marque
|
|
963
969
|
model: Modèle
|
|
964
970
|
plate-number: Numéro de plaque
|
|
965
|
-
select-driver: Sélectionner un conducteur
|
|
966
971
|
upload-new-photo: Télécharger une nouvelle photo
|
|
967
972
|
vehicle-make: Marque du véhicule
|
|
968
973
|
vehicle-model: Modèle du véhicule
|
|
@@ -1210,12 +1215,53 @@ scheduler:
|
|
|
1210
1215
|
scheduled-orders: Commandes programmées
|
|
1211
1216
|
unauthorized-to-schedule: Vous n'êtes pas autorisé à programmer des commandes.
|
|
1212
1217
|
scheduling-for: Programmation pour {orderId}
|
|
1218
|
+
add-shift: Add Shift
|
|
1219
|
+
create-shift: Create Shift
|
|
1220
|
+
edit-shift: Edit Shift
|
|
1221
|
+
delete-shift: Delete Shift
|
|
1222
|
+
delete-shift-confirm: Are you sure you want to delete this shift? This action cannot be undone.
|
|
1223
|
+
shift-created: Shift created successfully.
|
|
1224
|
+
shift-updated: Shift updated successfully.
|
|
1225
|
+
shift-title: Shift Title
|
|
1226
|
+
shift-title-placeholder: e.g. Morning Delivery Run
|
|
1227
|
+
shift-start: Shift Start
|
|
1228
|
+
shift-end: Shift End
|
|
1229
|
+
shift-notes-placeholder: Optional notes about this shift
|
|
1230
|
+
select-start-datetime: Select start date & time
|
|
1231
|
+
select-end-datetime: Select end date & time
|
|
1232
|
+
select-driver: Select Driver
|
|
1233
|
+
upcoming-shifts: Upcoming Shifts
|
|
1234
|
+
no-upcoming-shifts: No upcoming shifts scheduled.
|
|
1235
|
+
hours-of-service: Hours of Service
|
|
1236
|
+
daily-driving-hours: Daily Driving Hours
|
|
1237
|
+
weekly-hours: Weekly Hours
|
|
1238
|
+
compliance-status: Compliance Status
|
|
1239
|
+
set-availability: Set Availability
|
|
1240
|
+
availability-set: Availability saved successfully.
|
|
1241
|
+
availability-time-off: Availability & Time Off
|
|
1242
|
+
no-availability-restrictions: No availability restrictions set.
|
|
1243
|
+
available: Available
|
|
1244
|
+
unavailable: Unavailable
|
|
1245
|
+
unavailable-time-off: Unavailable / Time Off
|
|
1246
|
+
availability-type: Availability Type
|
|
1247
|
+
request-time-off: Request Time Off
|
|
1248
|
+
submit-request: Submit Request
|
|
1249
|
+
time-off-requested: Time off request submitted.
|
|
1250
|
+
delete-availability: Delete Availability
|
|
1251
|
+
delete-availability-confirm: Are you sure you want to remove this availability record?
|
|
1252
|
+
availability-deleted: Availability record removed.
|
|
1253
|
+
start-date: Start Date
|
|
1254
|
+
end-date: End Date
|
|
1255
|
+
select-start-date: Select start date
|
|
1256
|
+
select-end-date: Select end date
|
|
1257
|
+
reason: Reason
|
|
1258
|
+
reason-placeholder: e.g. Personal appointment
|
|
1259
|
+
notes-placeholder: Optional additional notes
|
|
1213
1260
|
modals:
|
|
1214
1261
|
new-custom-field-group:
|
|
1215
1262
|
modal-title: Créer un nouveau groupe de champs personnalisés
|
|
1216
1263
|
group-name: Nom du groupe
|
|
1217
1264
|
assign-driver:
|
|
1218
|
-
select-driver: Sélectionner un conducteur
|
|
1219
1265
|
select-assign: Sélectionner un conducteur à assigner
|
|
1220
1266
|
clone-config-form:
|
|
1221
1267
|
name: Nom de la configuration
|
|
@@ -1277,7 +1323,6 @@ modals:
|
|
|
1277
1323
|
fuel-report-details:
|
|
1278
1324
|
fuel: Carburant / Volume
|
|
1279
1325
|
fuel-report-form:
|
|
1280
|
-
select-driver: Sélectionner le conducteur
|
|
1281
1326
|
select-vehicle: Sélectionner le véhicule
|
|
1282
1327
|
volume: Volume
|
|
1283
1328
|
volume-text: Sélectionnez l'unité métrique et le volume de carburant à déclarer.
|
|
@@ -1304,7 +1349,6 @@ modals:
|
|
|
1304
1349
|
select-reporter: Sélectionner le rapporteur
|
|
1305
1350
|
assigned: Attribué à
|
|
1306
1351
|
select-assignee: Sélectionner le destinataire
|
|
1307
|
-
select-driver: Sélectionner le conducteur
|
|
1308
1352
|
select-vehicle: Sélectionner le véhicule
|
|
1309
1353
|
select-type: Sélectionner le type
|
|
1310
1354
|
select-category: Sélectionner la catégorie
|
|
@@ -1338,7 +1382,6 @@ modals:
|
|
|
1338
1382
|
tags: Tags de la configuration
|
|
1339
1383
|
add-tags: Ajouter des tags
|
|
1340
1384
|
order-assign-driver:
|
|
1341
|
-
select-driver: Sélectionner un conducteur
|
|
1342
1385
|
select-assign: Sélectionnez le conducteur à assigner
|
|
1343
1386
|
order-config-new-status:
|
|
1344
1387
|
new-status: Nouveau statut
|
|
@@ -1364,7 +1407,6 @@ modals:
|
|
|
1364
1407
|
select-facilitator: Sélectionner un facilitateur
|
|
1365
1408
|
assign-driver: Assigner un conducteur
|
|
1366
1409
|
assign-driver-text: Assignez le conducteur à qui cette commande sera expédiée.
|
|
1367
|
-
select-driver: Sélectionner un conducteur
|
|
1368
1410
|
assign-vehicle: Assigner un véhicule
|
|
1369
1411
|
assign-vehicle-text: Assignez le véhicule avec lequel cette commande sera effectuée.
|
|
1370
1412
|
select-vehicle: Sélectionner un véhicule
|
|
@@ -1500,7 +1542,6 @@ modals:
|
|
|
1500
1542
|
make: Marque du véhicule
|
|
1501
1543
|
model: Modèle du véhicule
|
|
1502
1544
|
year: Année du véhicule
|
|
1503
|
-
select-driver: Sélectionner un conducteur
|
|
1504
1545
|
body: Type de carrosserie du véhicule
|
|
1505
1546
|
doors: Nombre de portes
|
|
1506
1547
|
type: Type de transmission du véhicule
|