@fleetbase/fleetops-engine 0.6.51 → 0.6.53
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/README.md +0 -2
- package/addon/components/cell/telematic-provider.hbs +16 -0
- package/addon/components/cell/telematic-provider.js +36 -0
- package/addon/components/cell/telematic-status.hbs +1 -0
- package/addon/components/cell/telematic-status.js +39 -0
- package/addon/components/device/manager.hbs +5 -6
- package/addon/components/device/manager.js +12 -15
- package/addon/components/driver/details.hbs +1 -1
- package/addon/components/fleet/vehicle-listing.js +1 -0
- package/addon/components/fuel-integration/form.hbs +200 -0
- package/addon/components/fuel-integration/form.js +242 -0
- package/addon/components/fuel-integration/hub.hbs +154 -0
- package/addon/components/fuel-integration/hub.js +165 -0
- package/addon/components/fuel-integration/matching-priority.hbs +76 -0
- package/addon/components/fuel-integration/matching-priority.js +145 -0
- package/addon/components/fuel-report/details.hbs +13 -1
- package/addon/components/issue/details.hbs +3 -57
- package/addon/components/issue/details.js +0 -96
- package/addon/components/layout/fleet-ops-sidebar/operations-monitor.hbs +201 -0
- package/addon/components/layout/fleet-ops-sidebar/operations-monitor.js +589 -0
- package/addon/components/layout/fleet-ops-sidebar.hbs +19 -233
- package/addon/components/layout/fleet-ops-sidebar.js +287 -376
- package/addon/components/maintenance-schedule/form.js +1 -0
- package/addon/components/map/drawer/device-event-listing.hbs +12 -2
- package/addon/components/map/drawer/driver-listing.hbs +14 -1
- package/addon/components/map/drawer/place-listing.hbs +14 -1
- package/addon/components/map/drawer/position-listing.hbs +12 -2
- package/addon/components/map/drawer/vehicle-listing.hbs +14 -1
- package/addon/components/modals/assigned-orders.hbs +40 -0
- package/addon/components/modals/attach-device.hbs +4 -3
- package/addon/components/modals/attach-telematic-device.hbs +25 -0
- package/addon/components/modals/attach-telematic-device.js +3 -0
- package/addon/components/modals/driver-assign-order.hbs +7 -58
- package/addon/components/modals/driver-assign-vehicle.hbs +10 -2
- package/addon/components/modals/fleet-assign-driver.hbs +18 -0
- package/addon/components/modals/fleet-assign-driver.js +3 -0
- package/addon/components/modals/fleet-assign-vehicle.hbs +18 -0
- package/addon/components/modals/fleet-assign-vehicle.js +3 -0
- package/addon/components/modals/telematic-connection-diagnostics.hbs +75 -0
- package/addon/components/modals/telematic-connection-diagnostics.js +287 -0
- package/addon/components/modals/vehicle-details.hbs +6 -1
- package/addon/components/modals/vehicle-form.hbs +8 -1
- package/addon/components/order/card.hbs +106 -0
- package/addon/components/order/card.js +257 -0
- package/addon/components/order/form/payload.js +3 -1
- package/addon/components/order/form/service-rate.hbs +2 -0
- package/addon/components/service-rate/form.hbs +3 -2
- package/addon/components/telematic/details.hbs +98 -87
- package/addon/components/telematic/details.js +230 -1
- package/addon/components/telematic/form.hbs +303 -72
- package/addon/components/telematic/form.js +519 -3
- package/addon/components/telematic/hub.hbs +149 -0
- package/addon/components/telematic/hub.js +142 -0
- package/addon/components/telematic/settings.hbs +152 -0
- package/addon/components/telematic/settings.js +45 -0
- package/addon/components/telematic/tab-empty-state.hbs +29 -0
- package/addon/components/telematic/tab-empty-state.js +33 -0
- package/addon/components/vehicle/details.hbs +6 -1
- package/addon/components/vehicle/form.hbs +2 -1
- package/addon/components/widget/fuel-providers.hbs +43 -0
- package/addon/components/widget/fuel-providers.js +27 -0
- package/addon/controllers/connectivity/devices/index/details.js +27 -1
- package/addon/controllers/connectivity/devices/index.js +18 -1
- package/addon/controllers/connectivity/fuel-providers/details/sync.js +18 -0
- package/addon/controllers/connectivity/fuel-providers/details/transactions.js +24 -0
- package/addon/controllers/connectivity/fuel-providers/details.js +69 -0
- package/addon/controllers/connectivity/fuel-providers/edit.js +24 -0
- package/addon/controllers/connectivity/fuel-providers/index.js +177 -0
- package/addon/controllers/connectivity/fuel-providers/new.js +37 -0
- package/addon/controllers/connectivity/telematics/details/attachments.js +247 -0
- package/addon/controllers/connectivity/telematics/details/devices.js +368 -0
- package/addon/controllers/connectivity/telematics/details/events.js +244 -0
- package/addon/controllers/connectivity/telematics/details/index.js +3 -0
- package/addon/controllers/connectivity/telematics/details/logs.js +43 -0
- package/addon/controllers/connectivity/telematics/details/sensors.js +270 -0
- package/addon/controllers/connectivity/telematics/details.js +149 -0
- package/addon/controllers/connectivity/telematics/{index/edit.js → edit.js} +15 -4
- package/addon/controllers/connectivity/telematics/index.js +25 -5
- package/addon/controllers/connectivity/telematics/{index/new.js → new.js} +8 -2
- package/addon/controllers/maintenance/index.js +100 -0
- package/addon/controllers/management/drivers/index/details.js +78 -1
- package/addon/controllers/management/drivers/index.js +39 -0
- package/addon/controllers/management/fleets/index/details.js +23 -1
- package/addon/controllers/management/fleets/index.js +6 -1
- package/addon/controllers/management/fuel-reports/index.js +37 -1
- package/addon/controllers/management/fuel-transactions/index/details.js +70 -0
- package/addon/controllers/management/fuel-transactions/index.js +240 -0
- package/addon/controllers/management/index.js +88 -0
- package/addon/controllers/management/vehicles/index/details.js +32 -0
- package/addon/controllers/management/vehicles/index.js +26 -0
- package/addon/controllers/operations/orders/index.js +4 -0
- package/addon/controllers/settings/index.js +142 -0
- package/addon/controllers/settings/payments/index.js +5 -0
- package/addon/extension.js +31 -0
- package/addon/routes/analytics/index.js +3 -0
- package/addon/routes/connectivity/devices/index.js +3 -0
- package/addon/routes/connectivity/fuel-providers/details/index.js +7 -0
- package/addon/routes/connectivity/fuel-providers/details/matching.js +7 -0
- package/addon/routes/connectivity/fuel-providers/details/settings.js +7 -0
- package/addon/routes/connectivity/fuel-providers/details/sync.js +18 -0
- package/addon/routes/connectivity/fuel-providers/details/transactions.js +14 -0
- package/addon/routes/connectivity/fuel-providers/details.js +18 -0
- package/addon/routes/connectivity/fuel-providers/edit.js +18 -0
- package/addon/routes/connectivity/fuel-providers/index.js +20 -0
- package/addon/routes/connectivity/fuel-providers/new.js +3 -0
- package/addon/routes/connectivity/fuel-providers.js +3 -0
- package/addon/routes/connectivity/telematics/details/attachments.js +28 -0
- package/addon/routes/connectivity/telematics/details/devices.js +30 -0
- package/addon/routes/connectivity/telematics/details/events.js +33 -0
- package/addon/routes/connectivity/telematics/details/index.js +3 -0
- package/addon/routes/connectivity/telematics/details/logs.js +17 -0
- package/addon/routes/connectivity/telematics/details/sensors.js +29 -0
- package/addon/routes/connectivity/telematics/{index/details.js → details.js} +1 -1
- package/addon/routes/connectivity/telematics/{index/edit.js → edit.js} +1 -1
- package/addon/routes/connectivity/telematics/new.js +3 -0
- package/addon/routes/maintenance/index.js +3 -0
- package/addon/routes/maintenance/work-orders/index.js +2 -0
- package/addon/routes/management/drivers/index/details/activity.js +3 -0
- package/addon/routes/management/fuel-reports/index.js +2 -0
- package/addon/routes/management/fuel-transactions/index/details.js +18 -0
- package/addon/routes/management/fuel-transactions/index.js +21 -0
- package/addon/routes/management/fuel-transactions.js +3 -0
- package/addon/routes/settings/index.js +3 -0
- package/addon/routes.js +28 -9
- package/addon/services/device-actions.js +64 -1
- package/addon/services/device-event-actions.js +12 -1
- package/addon/services/driver-actions.js +147 -11
- package/addon/services/fleet-actions.js +66 -1
- package/addon/services/fuel-integration-actions.js +31 -0
- package/addon/services/issue-actions.js +1 -1
- package/addon/services/telematic-actions.js +9 -3
- package/addon/services/vehicle-actions.js +125 -0
- package/addon/styles/fleetops-engine.css +2237 -162
- package/addon/templates/analytics/index.hbs +14 -0
- package/addon/templates/analytics/reports/index.hbs +19 -1
- package/addon/templates/connectivity/devices/index.hbs +19 -1
- package/addon/templates/connectivity/events/index.hbs +16 -1
- package/addon/templates/connectivity/fuel-providers/details/index.hbs +38 -0
- package/addon/templates/connectivity/fuel-providers/details/matching.hbs +13 -0
- package/addon/templates/connectivity/fuel-providers/details/settings.hbs +11 -0
- package/addon/templates/connectivity/fuel-providers/details/sync.hbs +48 -0
- package/addon/templates/connectivity/fuel-providers/details/transactions.hbs +21 -0
- package/addon/templates/connectivity/fuel-providers/details.hbs +51 -0
- package/addon/templates/connectivity/fuel-providers/edit.hbs +24 -0
- package/addon/templates/connectivity/fuel-providers/index.hbs +12 -0
- package/addon/templates/connectivity/fuel-providers/new.hbs +22 -0
- package/addon/templates/connectivity/fuel-providers.hbs +1 -0
- package/addon/templates/connectivity/sensors/index.hbs +19 -1
- package/addon/templates/connectivity/telematics/details/attachments.hbs +163 -0
- package/addon/templates/connectivity/telematics/details/devices.hbs +88 -0
- package/addon/templates/connectivity/telematics/details/events.hbs +101 -0
- package/addon/templates/connectivity/telematics/{index/details → details}/index.hbs +0 -1
- package/addon/templates/connectivity/telematics/details/logs.hbs +69 -0
- package/addon/templates/connectivity/telematics/details/sensors.hbs +88 -0
- package/addon/templates/connectivity/telematics/details.hbs +53 -0
- package/addon/templates/connectivity/telematics/edit.hbs +27 -0
- package/addon/templates/connectivity/telematics/index.hbs +6 -8
- package/addon/templates/connectivity/telematics/new.hbs +24 -0
- package/addon/templates/maintenance/equipment/index.hbs +19 -1
- package/addon/templates/maintenance/index.hbs +113 -0
- package/addon/templates/maintenance/maintenances/index.hbs +15 -1
- package/addon/templates/maintenance/parts/index.hbs +19 -1
- package/addon/templates/maintenance/schedules/index.hbs +19 -1
- package/addon/templates/maintenance/work-orders/index.hbs +19 -1
- package/addon/templates/management/contacts/customers.hbs +15 -1
- package/addon/templates/management/contacts/index.hbs +19 -1
- package/addon/templates/management/drivers/index/details/activity.hbs +1 -0
- package/addon/templates/management/drivers/index.hbs +19 -1
- package/addon/templates/management/fleets/index.hbs +19 -1
- package/addon/templates/management/fuel-reports/index.hbs +19 -1
- package/addon/templates/management/fuel-transactions/index/details.hbs +73 -0
- package/addon/templates/management/fuel-transactions/index.hbs +58 -0
- package/addon/templates/management/fuel-transactions.hbs +1 -0
- package/addon/templates/management/index.hbs +109 -73
- package/addon/templates/management/issues/index.hbs +19 -1
- package/addon/templates/management/places/index.hbs +19 -1
- package/addon/templates/management/vehicles/index.hbs +19 -1
- package/addon/templates/management/vendors/index.hbs +19 -1
- package/addon/templates/management/vendors/integrated.hbs +13 -1
- package/addon/templates/operations/orders/index.hbs +19 -1
- package/addon/templates/operations/service-rates/index.hbs +19 -1
- package/addon/templates/settings/index.hbs +83 -0
- package/addon/templates/settings/payments/index.hbs +15 -1
- package/addon/templates/settings/routing.hbs +2 -2
- package/addon/utils/fleet-ops-options.js +3 -0
- package/app/components/cell/telematic-provider.js +1 -0
- package/app/components/cell/telematic-status.js +1 -0
- package/app/components/fuel-integration/form.js +1 -0
- package/app/components/fuel-integration/hub.js +1 -0
- package/app/components/fuel-integration/matching-priority.js +1 -0
- package/app/components/modals/assigned-orders.js +1 -0
- package/app/components/modals/attach-telematic-device.js +1 -0
- package/app/components/modals/fleet-assign-driver.js +1 -0
- package/app/components/modals/fleet-assign-vehicle.js +1 -0
- package/app/components/modals/telematic-connection-diagnostics.js +1 -0
- package/app/components/order/card.js +1 -0
- package/app/components/telematic/hub.js +1 -0
- package/app/components/telematic/settings.js +1 -0
- package/app/components/telematic/tab-empty-state.js +1 -0
- package/app/components/widget/fuel-providers.js +1 -0
- package/app/controllers/connectivity/fuel-providers/details/sync.js +1 -0
- package/app/controllers/connectivity/{telematics/index/details/devices.js → fuel-providers/details/transactions.js} +1 -1
- package/app/controllers/connectivity/{telematics/index → fuel-providers}/details.js +1 -1
- package/app/controllers/connectivity/{telematics/index → fuel-providers}/edit.js +1 -1
- package/app/controllers/connectivity/{telematics/index/details → fuel-providers}/index.js +1 -1
- package/app/controllers/connectivity/{telematics/index → fuel-providers}/new.js +1 -1
- package/app/controllers/connectivity/telematics/details/attachments.js +1 -0
- package/app/controllers/connectivity/telematics/details/devices.js +1 -0
- package/app/controllers/connectivity/telematics/details/events.js +1 -0
- package/app/controllers/connectivity/telematics/details/index.js +1 -0
- package/app/controllers/connectivity/telematics/details/logs.js +1 -0
- package/app/controllers/connectivity/telematics/details/sensors.js +1 -0
- package/app/controllers/connectivity/telematics/details.js +1 -0
- package/app/controllers/connectivity/telematics/edit.js +1 -0
- package/app/controllers/connectivity/telematics/new.js +1 -0
- package/app/controllers/maintenance/index.js +1 -0
- package/app/controllers/management/fuel-transactions/index/details.js +1 -0
- package/app/controllers/management/fuel-transactions/index.js +1 -0
- package/app/controllers/management/index.js +1 -0
- package/app/controllers/settings/index.js +1 -0
- package/app/routes/analytics/index.js +1 -0
- package/app/routes/connectivity/{telematics/index → fuel-providers}/details/index.js +1 -1
- package/app/routes/connectivity/{telematics/index/details/events.js → fuel-providers/details/matching.js} +1 -1
- package/app/routes/connectivity/fuel-providers/details/settings.js +1 -0
- package/app/routes/connectivity/fuel-providers/details/sync.js +1 -0
- package/app/routes/connectivity/{telematics/index/details/devices.js → fuel-providers/details/transactions.js} +1 -1
- package/app/routes/connectivity/{telematics/index → fuel-providers}/details.js +1 -1
- package/app/routes/connectivity/{telematics/index → fuel-providers}/edit.js +1 -1
- package/app/routes/connectivity/fuel-providers/index.js +1 -0
- package/app/routes/connectivity/{telematics/index → fuel-providers}/new.js +1 -1
- package/app/routes/connectivity/fuel-providers.js +1 -0
- package/app/routes/connectivity/telematics/details/attachments.js +1 -0
- package/app/routes/connectivity/telematics/details/devices.js +1 -0
- package/app/routes/connectivity/telematics/details/events.js +1 -0
- package/app/routes/connectivity/telematics/details/index.js +1 -0
- package/app/routes/connectivity/telematics/details/logs.js +1 -0
- package/app/routes/connectivity/telematics/details/sensors.js +1 -0
- package/app/routes/connectivity/telematics/details.js +1 -0
- package/app/routes/connectivity/telematics/edit.js +1 -0
- package/app/routes/connectivity/telematics/new.js +1 -0
- package/app/routes/maintenance/index.js +1 -0
- package/app/routes/management/drivers/index/details/activity.js +1 -0
- package/app/routes/management/fuel-transactions/index/details.js +1 -0
- package/app/routes/management/fuel-transactions/index.js +1 -0
- package/app/routes/management/fuel-transactions.js +1 -0
- package/app/routes/settings/index.js +1 -0
- package/app/services/fuel-integration-actions.js +1 -0
- package/app/templates/analytics/index.js +1 -0
- package/app/templates/connectivity/{telematics/index → fuel-providers}/details/index.js +1 -1
- package/app/templates/connectivity/{telematics/index/details/events.js → fuel-providers/details/matching.js} +1 -1
- package/app/templates/connectivity/fuel-providers/details/settings.js +1 -0
- package/app/templates/connectivity/fuel-providers/details/sync.js +1 -0
- package/app/templates/connectivity/{telematics/index/details/devices.js → fuel-providers/details/transactions.js} +1 -1
- package/app/templates/connectivity/{telematics/index → fuel-providers}/details.js +1 -1
- package/app/templates/connectivity/{telematics/index → fuel-providers}/edit.js +1 -1
- package/app/templates/connectivity/fuel-providers/index.js +1 -0
- package/app/templates/connectivity/{telematics/index → fuel-providers}/new.js +1 -1
- package/app/templates/connectivity/fuel-providers.js +1 -0
- package/app/templates/connectivity/telematics/details/attachments.js +1 -0
- package/app/templates/connectivity/telematics/details/devices.js +1 -0
- package/app/templates/connectivity/telematics/details/events.js +1 -0
- package/app/templates/connectivity/telematics/details/index.js +1 -0
- package/app/templates/connectivity/telematics/details/logs.js +1 -0
- package/app/templates/connectivity/telematics/details/sensors.js +1 -0
- package/app/templates/connectivity/telematics/details.js +1 -0
- package/app/templates/connectivity/telematics/edit.js +1 -0
- package/app/templates/connectivity/telematics/new.js +1 -0
- package/app/templates/maintenance/index.js +1 -0
- package/app/templates/management/drivers/index/details/activity.js +1 -0
- package/app/templates/management/fuel-transactions/index/details.js +1 -0
- package/app/templates/management/fuel-transactions/index.js +1 -0
- package/app/templates/management/fuel-transactions.js +1 -0
- package/app/templates/management/index.js +1 -0
- package/app/templates/settings/index.js +1 -0
- package/assets/images/telematics/providers/afaqy.webp +0 -0
- package/assets/images/telematics/providers/default.webp +0 -0
- package/assets/images/telematics/providers/flespi.webp +0 -0
- package/assets/images/telematics/providers/geotab.webp +0 -0
- package/assets/images/telematics/providers/safee.webp +0 -0
- package/assets/images/telematics/providers/samsara.webp +0 -0
- package/composer.json +1 -1
- package/extension.json +1 -1
- package/package.json +4 -4
- package/server/config/fuel-providers.php +42 -0
- package/server/config/telematics.php +139 -130
- package/server/migrations/2026_06_06_000001_harden_device_events_telematics_contract.php +59 -0
- package/server/migrations/2026_06_08_000001_create_fuel_provider_connections_table.php +37 -0
- package/server/migrations/2026_06_08_000002_create_fuel_provider_transactions_table.php +53 -0
- package/server/migrations/2026_06_08_000003_create_fuel_provider_sync_runs_table.php +40 -0
- package/server/migrations/2026_06_10_000001_add_fuel_card_number_to_vehicles_table.php +25 -0
- package/server/migrations/2026_06_10_000002_add_vehicle_identity_columns_to_fuel_provider_transactions_table.php +39 -0
- package/server/migrations/2026_06_15_000001_normalize_device_attachable_vehicle_morph_types.php +30 -0
- package/server/src/Console/Commands/FixInvalidPolymorphicRelationTypeNamespaces.php +1 -0
- package/server/src/Contracts/FuelProvider.php +30 -0
- package/server/src/Contracts/TelematicProviderDescriptor.php +3 -1
- package/server/src/Events/FuelProviderTransactionImported.php +17 -0
- package/server/src/Events/FuelProviderTransactionMatched.php +17 -0
- package/server/src/Events/FuelProviderTransactionUnmatched.php +17 -0
- package/server/src/Events/FuelReportCreatedFromProvider.php +18 -0
- package/server/src/Http/Controllers/Internal/v1/AnalyticsController.php +6 -0
- package/server/src/Http/Controllers/Internal/v1/DeviceController.php +140 -2
- package/server/src/Http/Controllers/Internal/v1/DeviceEventController.php +44 -0
- package/server/src/Http/Controllers/Internal/v1/DriverController.php +158 -7
- package/server/src/Http/Controllers/Internal/v1/FuelProviderConnectionController.php +124 -0
- package/server/src/Http/Controllers/Internal/v1/FuelProviderSyncRunController.php +10 -0
- package/server/src/Http/Controllers/Internal/v1/FuelProviderTransactionController.php +76 -0
- package/server/src/Http/Controllers/Internal/v1/HubController.php +300 -0
- package/server/src/Http/Controllers/Internal/v1/SearchController.php +506 -0
- package/server/src/Http/Controllers/Internal/v1/SensorController.php +1 -1
- package/server/src/Http/Controllers/Internal/v1/TelematicController.php +179 -16
- package/server/src/Http/Controllers/Internal/v1/VehicleController.php +249 -0
- package/server/src/Http/Controllers/TelematicWebhookController.php +103 -19
- package/server/src/Http/Filter/DeviceFilter.php +74 -0
- package/server/src/Http/Filter/DriverFilter.php +6 -0
- package/server/src/Http/Filter/FuelProviderConnectionFilter.php +33 -0
- package/server/src/Http/Filter/FuelProviderSyncRunFilter.php +28 -0
- package/server/src/Http/Filter/FuelProviderTransactionFilter.php +59 -0
- package/server/src/Http/Filter/FuelReportFilter.php +10 -0
- package/server/src/Http/Filter/VehicleFilter.php +6 -0
- package/server/src/Http/Resources/v1/Driver.php +15 -0
- package/server/src/Http/Resources/v1/FuelProviderConnection.php +30 -0
- package/server/src/Http/Resources/v1/FuelProviderSyncRun.php +36 -0
- package/server/src/Http/Resources/v1/FuelProviderTransaction.php +54 -0
- package/server/src/Http/Resources/v1/FuelReport.php +28 -22
- package/server/src/Http/Resources/v1/Index/Driver.php +26 -20
- package/server/src/Http/Resources/v1/Index/Vehicle.php +29 -22
- package/server/src/Http/Resources/v1/Vehicle.php +17 -0
- package/server/src/Http/Resources/v1/VehicleWithoutDriver.php +2 -0
- package/server/src/Jobs/SyncFuelProviderTransactionsJob.php +57 -0
- package/server/src/Jobs/SyncTelematicDevicesJob.php +105 -17
- package/server/src/Jobs/TestTelematicConnectionJob.php +9 -22
- package/server/src/Models/Asset.php +2 -1
- package/server/src/Models/Contact.php +2 -1
- package/server/src/Models/Device.php +27 -4
- package/server/src/Models/DeviceEvent.php +40 -3
- package/server/src/Models/Driver.php +3 -2
- package/server/src/Models/Equipment.php +2 -1
- package/server/src/Models/Fleet.php +2 -1
- package/server/src/Models/FuelProviderConnection.php +60 -0
- package/server/src/Models/FuelProviderSyncRun.php +58 -0
- package/server/src/Models/FuelProviderTransaction.php +119 -0
- package/server/src/Models/FuelReport.php +16 -1
- package/server/src/Models/Part.php +2 -1
- package/server/src/Models/Sensor.php +21 -4
- package/server/src/Models/ServiceRate.php +39 -2
- package/server/src/Models/Vehicle.php +14 -2
- package/server/src/Models/Vendor.php +2 -1
- package/server/src/Providers/FleetOpsServiceProvider.php +20 -0
- package/server/src/Support/Analytics/FuelProviderSummary.php +42 -0
- package/server/src/Support/FuelProviders/FuelProviderDescriptor.php +55 -0
- package/server/src/Support/FuelProviders/FuelProviderRegistry.php +75 -0
- package/server/src/Support/FuelProviders/FuelProviderService.php +447 -0
- package/server/src/Support/FuelProviders/Providers/AbstractFuelProvider.php +98 -0
- package/server/src/Support/FuelProviders/Providers/PetroAppFuelProvider.php +167 -0
- package/server/src/Support/Telematics/Providers/AbstractProvider.php +27 -6
- package/server/src/Support/Telematics/Providers/AfaqyProvider.php +105 -38
- package/server/src/Support/Telematics/Providers/FlespiProvider.php +1 -0
- package/server/src/Support/Telematics/Providers/GeotabProvider.php +1 -0
- package/server/src/Support/Telematics/Providers/SafeeProvider.php +32 -22
- package/server/src/Support/Telematics/Providers/SamsaraProvider.php +3 -1
- package/server/src/Support/Telematics/TelematicService.php +340 -21
- package/server/src/routes.php +50 -4
- package/server/tests/FuelProviderRegistryTest.php +416 -0
- package/server/tests/HubRoutesTest.php +62 -0
- package/server/tests/ServiceRateAlgorithmWeightVariablesTest.php +44 -0
- package/server/tests/TelematicsHardeningTest.php +359 -0
- package/server/tests/VehicleDriverAssignmentTest.php +51 -0
- package/translations/ar-ae.yml +23 -1
- package/translations/bg-bg.yaml +72 -0
- package/translations/en-us.yaml +83 -0
- package/translations/es-pa.yaml +72 -0
- package/translations/fr-fr.yaml +72 -0
- package/translations/mn-mn.yaml +72 -0
- package/translations/pt-br.yaml +72 -0
- package/translations/ru-ru.yaml +72 -0
- package/translations/vi-vn.yaml +98 -1
- package/addon/controllers/connectivity/telematics/index/details/devices.js +0 -3
- package/addon/controllers/connectivity/telematics/index/details/events.js +0 -3
- package/addon/controllers/connectivity/telematics/index/details/index.js +0 -3
- package/addon/controllers/connectivity/telematics/index/details/sensors.js +0 -3
- package/addon/controllers/connectivity/telematics/index/details.js +0 -24
- package/addon/routes/connectivity/telematics/index/details/devices.js +0 -3
- package/addon/routes/connectivity/telematics/index/details/events.js +0 -3
- package/addon/routes/connectivity/telematics/index/details/index.js +0 -3
- package/addon/routes/connectivity/telematics/index/details/sensors.js +0 -3
- package/addon/routes/connectivity/telematics/index/new.js +0 -3
- 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/index/details.hbs +0 -14
- package/addon/templates/connectivity/telematics/index/edit.hbs +0 -12
- package/addon/templates/connectivity/telematics/index/new.hbs +0 -12
- package/app/controllers/connectivity/telematics/index/details/events.js +0 -1
- package/app/controllers/connectivity/telematics/index/details/sensors.js +0 -1
- package/app/routes/connectivity/telematics/index/details/sensors.js +0 -1
- package/app/templates/connectivity/telematics/index/details/sensors.js +0 -1
package/translations/ru-ru.yaml
CHANGED
|
@@ -46,6 +46,7 @@ common:
|
|
|
46
46
|
overview: Overview
|
|
47
47
|
notes: Notes
|
|
48
48
|
schedule: Schedule
|
|
49
|
+
current-job: Current Job
|
|
49
50
|
menu:
|
|
50
51
|
operations: Операции
|
|
51
52
|
dashboard: Панель управления
|
|
@@ -61,6 +62,7 @@ menu:
|
|
|
61
62
|
contacts: Контакты
|
|
62
63
|
places: Места
|
|
63
64
|
fuel-reports: Отчёты по топливу
|
|
65
|
+
fuel-transactions: Топливные транзакции
|
|
64
66
|
issues: Проблемы
|
|
65
67
|
maintenance: Обслуживание
|
|
66
68
|
work-orders: Рабочие заказы
|
|
@@ -68,6 +70,7 @@ menu:
|
|
|
68
70
|
parts: Запчасти
|
|
69
71
|
connectivity: Подключение
|
|
70
72
|
telematics: Телематика
|
|
73
|
+
fuel-providers: Интеграции топлива
|
|
71
74
|
devices: Устройства
|
|
72
75
|
sensors: Датчики
|
|
73
76
|
events: События
|
|
@@ -406,9 +409,30 @@ driver:
|
|
|
406
409
|
driver-license: Водительское удостоверение
|
|
407
410
|
no-vehicle-assigned: Транспортное средство не назначено
|
|
408
411
|
actions:
|
|
412
|
+
unassign-orders: Unassign Orders
|
|
413
|
+
unassign-vehicle: Unassign Vehicle
|
|
414
|
+
create-issue: Create Issue
|
|
409
415
|
assign-order: Назначить заказ водителю
|
|
410
416
|
assign-vehicle: Назначить транспортное средство водителю
|
|
411
417
|
locate-driver: Найти водителя на карте
|
|
418
|
+
prompts:
|
|
419
|
+
assign-order-success: Order assigned to {driverName}.
|
|
420
|
+
assign-order-title: "Assign order to {driverName}"
|
|
421
|
+
select-order-warning: "Select an order to assign."
|
|
422
|
+
assign-vehicle-title: "Assign vehicle to {driverName}"
|
|
423
|
+
assign-vehicle-success: "Vehicle assigned to {driverName}."
|
|
424
|
+
select-vehicle-warning: Select a vehicle to assign.
|
|
425
|
+
no-assigned-orders-warning: No assigned orders found for {driverName}.
|
|
426
|
+
select-orders-warning: Select at least one order to unassign.
|
|
427
|
+
unassign-orders-title: Unassign orders from {driverName}
|
|
428
|
+
confirm-unassign-orders-title: Unassign {count} order(s) from {driverName}?
|
|
429
|
+
confirm-unassign-orders-body: "This will remove {driverName} from these orders: {orders}."
|
|
430
|
+
unassign-orders-success: Unassigned {driverName} from {count} order(s).
|
|
431
|
+
no-vehicle-assigned-warning: No vehicle is assigned to {driverName}.
|
|
432
|
+
unassign-vehicle-title: Unassign {vehicleName} from {driverName}?
|
|
433
|
+
unassign-vehicle-body: This removes {driverName} from {vehicleName}. Order assignments are not changed.
|
|
434
|
+
unassign-vehicle-success: Unassigned {vehicleName} from {driverName}.
|
|
435
|
+
issue-title: Issue reported for {driverName}
|
|
412
436
|
device:
|
|
413
437
|
fields:
|
|
414
438
|
title: Данные устройства
|
|
@@ -441,6 +465,18 @@ device:
|
|
|
441
465
|
warranty: Гарантия
|
|
442
466
|
warranty-placeholder: Выберите гарантию
|
|
443
467
|
notes: Примечания
|
|
468
|
+
actions:
|
|
469
|
+
attach-to-vehicle: Attach to Vehicle
|
|
470
|
+
detach-from-vehicle: Detach from Vehicle
|
|
471
|
+
prompts:
|
|
472
|
+
attach-to-vehicle-title: Attach device to vehicle
|
|
473
|
+
attach-device-to-vehicle-title: "Attach {deviceName} to vehicle"
|
|
474
|
+
select-vehicle-warning: Select a vehicle to attach this device to.
|
|
475
|
+
attach-to-vehicle-success: Device attached to vehicle.
|
|
476
|
+
not-attached-warning: "{deviceName} is not attached to a vehicle."
|
|
477
|
+
detach-from-vehicle-title: "Detach {deviceName} from vehicle?"
|
|
478
|
+
detach-from-vehicle-body: "This detaches {deviceName} from {vehicleName} and stops vehicle telemetry updates until it is attached again."
|
|
479
|
+
detach-from-vehicle-success: Device detached from vehicle.
|
|
444
480
|
entity:
|
|
445
481
|
fields:
|
|
446
482
|
declare: Заявить
|
|
@@ -491,7 +527,15 @@ fleet:
|
|
|
491
527
|
add-vehicle: Добавить транспортное средство во флот
|
|
492
528
|
loading-message: Загрузка транспортных средств флота...
|
|
493
529
|
actions:
|
|
530
|
+
assign-vehicle: Assign Vehicle to Fleet
|
|
494
531
|
assign-driver: Назначить водителя во флот
|
|
532
|
+
prompts:
|
|
533
|
+
assign-driver-title: Assign driver to {fleetName}
|
|
534
|
+
assign-vehicle-title: Assign vehicle to {fleetName}
|
|
535
|
+
select-driver-warning: Select a driver to assign.
|
|
536
|
+
select-vehicle-warning: Select a vehicle to assign.
|
|
537
|
+
assign-driver-success: Driver assigned to {fleetName}.
|
|
538
|
+
assign-vehicle-success: Vehicle assigned to {fleetName}.
|
|
495
539
|
fuel-report:
|
|
496
540
|
fields:
|
|
497
541
|
details: Детали отчёта о топливе
|
|
@@ -520,6 +564,20 @@ issue:
|
|
|
520
564
|
tags: Теги проблемы
|
|
521
565
|
type: Тип проблемы
|
|
522
566
|
order:
|
|
567
|
+
card:
|
|
568
|
+
linked-order: Linked Order
|
|
569
|
+
unknown-order: Unknown order
|
|
570
|
+
no-type: No type
|
|
571
|
+
pickup: Pickup
|
|
572
|
+
dropoff: Dropoff
|
|
573
|
+
return: Return
|
|
574
|
+
waypoints: Waypoints
|
|
575
|
+
additional-stop: additional stop
|
|
576
|
+
additional-stops: additional stops
|
|
577
|
+
no-pickup-address: No pickup address
|
|
578
|
+
no-dropoff-address: No dropoff address
|
|
579
|
+
no-route-details: No route details available.
|
|
580
|
+
no-order-linked: No order is linked to this issue.
|
|
523
581
|
fields:
|
|
524
582
|
ad-hoc: Внеплановый
|
|
525
583
|
ad-hoc-help-text: Включение режима Ad-Hoc позволит заказу интеллектуально оповещать
|
|
@@ -948,7 +1006,21 @@ vehicle:
|
|
|
948
1006
|
vin-number: VIN номер
|
|
949
1007
|
year: Год
|
|
950
1008
|
actions:
|
|
1009
|
+
attach-device: Attach Device
|
|
1010
|
+
unassign-orders: Unassign Orders
|
|
1011
|
+
create-issue: Create Issue
|
|
951
1012
|
locate-vehicle: Найти транспортное средство на карте
|
|
1013
|
+
prompts:
|
|
1014
|
+
attach-device-title: Attach device to {vehicleName}
|
|
1015
|
+
select-device-warning: Select a device to attach.
|
|
1016
|
+
attach-device-success: Device attached to {vehicleName}.
|
|
1017
|
+
no-assigned-orders-warning: No assigned orders found for {vehicleName}.
|
|
1018
|
+
select-orders-warning: Select at least one order to unassign.
|
|
1019
|
+
unassign-orders-title: Unassign orders from {vehicleName}
|
|
1020
|
+
confirm-unassign-orders-title: Unassign {count} order(s) from {vehicleName}?
|
|
1021
|
+
confirm-unassign-orders-body: "This will remove {vehicleName} from these orders: {orders}."
|
|
1022
|
+
unassign-orders-success: Unassigned {vehicleName} from {count} order(s).
|
|
1023
|
+
issue-title: Issue reported for {vehicleName}
|
|
952
1024
|
vendor:
|
|
953
1025
|
fields:
|
|
954
1026
|
setup-vendor: Настроить поставщика
|
package/translations/vi-vn.yaml
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
menu:
|
|
2
|
+
fuel-providers: Tích hợp Nhiên liệu
|
|
3
|
+
fuel-transactions: Giao dịch nhiên liệu
|
|
4
|
+
|
|
1
5
|
fleet-ops:
|
|
2
6
|
extension-name: Fleet-Ops
|
|
3
7
|
common:
|
|
@@ -310,10 +314,12 @@ fleet-ops:
|
|
|
310
314
|
contacts: Liên hệ
|
|
311
315
|
places: Địa điểm
|
|
312
316
|
fuel-reports: Báo cáo Nhiên liệu
|
|
317
|
+
fuel-transactions: Giao dịch Nhiên liệu
|
|
313
318
|
issues: Vấn đề
|
|
314
319
|
title: Tạo đơn hàng mới
|
|
315
320
|
settings: Cài đặt
|
|
316
321
|
order-config: Cấu hình Đơn hàng
|
|
322
|
+
fuel-providers: Tích hợp Nhiên liệu
|
|
317
323
|
live-map-drawer:
|
|
318
324
|
driver-listing:
|
|
319
325
|
location: Vị trí
|
|
@@ -1048,7 +1054,7 @@ fleet-ops:
|
|
|
1048
1054
|
more-waypoints: thêm điểm dừng
|
|
1049
1055
|
settings-window:
|
|
1050
1056
|
success-message: Cài đặt đã được lưu thành công.
|
|
1051
|
-
title: Cài đặt
|
|
1057
|
+
title: Cài đặt Fleet-Ops
|
|
1052
1058
|
save: Lưu Thay đổi
|
|
1053
1059
|
name: Khoảng cách Ping Adhoc Mặc định
|
|
1054
1060
|
name-text: Cài đặt này xác định khoảng cách mặc định tính bằng mét mà các đơn hàng adhoc nên ping tài xế trong khu vực của điểm đón đơn hàng.
|
|
@@ -1612,3 +1618,94 @@ scheduler:
|
|
|
1612
1618
|
reason: Reason
|
|
1613
1619
|
reason-placeholder: e.g. Personal appointment
|
|
1614
1620
|
notes-placeholder: Optional additional notes
|
|
1621
|
+
|
|
1622
|
+
common:
|
|
1623
|
+
current-job: Current Job
|
|
1624
|
+
driver:
|
|
1625
|
+
actions:
|
|
1626
|
+
unassign-orders: Unassign Orders
|
|
1627
|
+
unassign-vehicle: Unassign Vehicle
|
|
1628
|
+
create-issue: Create Issue
|
|
1629
|
+
assign-order: Assign Order to Driver
|
|
1630
|
+
assign-vehicle: Assign Vehicle to Driver
|
|
1631
|
+
locate-driver: Locate Driver on Map
|
|
1632
|
+
prompts:
|
|
1633
|
+
assign-order-success: Order assigned to {driverName}.
|
|
1634
|
+
assign-order-title: "Assign order to {driverName}"
|
|
1635
|
+
select-order-warning: "Select an order to assign."
|
|
1636
|
+
assign-vehicle-title: "Assign vehicle to {driverName}"
|
|
1637
|
+
assign-vehicle-success: "Vehicle assigned to {driverName}."
|
|
1638
|
+
select-vehicle-warning: Select a vehicle to assign.
|
|
1639
|
+
no-assigned-orders-warning: No assigned orders found for {driverName}.
|
|
1640
|
+
select-orders-warning: Select at least one order to unassign.
|
|
1641
|
+
unassign-orders-title: Unassign orders from {driverName}
|
|
1642
|
+
confirm-unassign-orders-title: Unassign {count} order(s) from {driverName}?
|
|
1643
|
+
confirm-unassign-orders-body: "This will remove {driverName} from these orders: {orders}."
|
|
1644
|
+
unassign-orders-success: Unassigned {driverName} from {count} order(s).
|
|
1645
|
+
no-vehicle-assigned-warning: No vehicle is assigned to {driverName}.
|
|
1646
|
+
unassign-vehicle-title: Unassign {vehicleName} from {driverName}?
|
|
1647
|
+
unassign-vehicle-body: This removes {driverName} from {vehicleName}. Order assignments are not changed.
|
|
1648
|
+
unassign-vehicle-success: Unassigned {vehicleName} from {driverName}.
|
|
1649
|
+
issue-title: Issue reported for {driverName}
|
|
1650
|
+
device:
|
|
1651
|
+
actions:
|
|
1652
|
+
attach-to-vehicle: Attach to Vehicle
|
|
1653
|
+
detach-from-vehicle: Detach from Vehicle
|
|
1654
|
+
prompts:
|
|
1655
|
+
attach-to-vehicle-title: Attach device to vehicle
|
|
1656
|
+
attach-device-to-vehicle-title: "Attach {deviceName} to vehicle"
|
|
1657
|
+
select-vehicle-warning: Select a vehicle to attach this device to.
|
|
1658
|
+
attach-to-vehicle-success: Device attached to vehicle.
|
|
1659
|
+
not-attached-warning: "{deviceName} is not attached to a vehicle."
|
|
1660
|
+
detach-from-vehicle-title: "Detach {deviceName} from vehicle?"
|
|
1661
|
+
detach-from-vehicle-body: "This detaches {deviceName} from {vehicleName} and stops vehicle telemetry updates until it is attached again."
|
|
1662
|
+
detach-from-vehicle-success: Device detached from vehicle.
|
|
1663
|
+
fleet:
|
|
1664
|
+
actions:
|
|
1665
|
+
assign-vehicle: Assign Vehicle to Fleet
|
|
1666
|
+
assign-driver: Assign Driver to Fleet
|
|
1667
|
+
prompts:
|
|
1668
|
+
assign-driver-title: Assign driver to {fleetName}
|
|
1669
|
+
assign-vehicle-title: Assign vehicle to {fleetName}
|
|
1670
|
+
select-driver-warning: Select a driver to assign.
|
|
1671
|
+
select-vehicle-warning: Select a vehicle to assign.
|
|
1672
|
+
assign-driver-success: Driver assigned to {fleetName}.
|
|
1673
|
+
assign-vehicle-success: Vehicle assigned to {fleetName}.
|
|
1674
|
+
vehicle:
|
|
1675
|
+
actions:
|
|
1676
|
+
attach-device: Attach Device
|
|
1677
|
+
unassign-orders: Unassign Orders
|
|
1678
|
+
create-issue: Create Issue
|
|
1679
|
+
locate-vehicle: Locate Vehicle on Map
|
|
1680
|
+
schedule-maintenance: Schedule Maintenance
|
|
1681
|
+
create-work-order: Create Work Order
|
|
1682
|
+
log-maintenance: Log Maintenance
|
|
1683
|
+
prompts:
|
|
1684
|
+
attach-device-title: Attach device to {vehicleName}
|
|
1685
|
+
select-device-warning: Select a device to attach.
|
|
1686
|
+
attach-device-success: Device attached to {vehicleName}.
|
|
1687
|
+
no-assigned-orders-warning: No assigned orders found for {vehicleName}.
|
|
1688
|
+
select-orders-warning: Select at least one order to unassign.
|
|
1689
|
+
unassign-orders-title: Unassign orders from {vehicleName}
|
|
1690
|
+
confirm-unassign-orders-title: Unassign {count} order(s) from {vehicleName}?
|
|
1691
|
+
confirm-unassign-orders-body: "This will remove {vehicleName} from these orders: {orders}."
|
|
1692
|
+
unassign-orders-success: Unassigned {vehicleName} from {count} order(s).
|
|
1693
|
+
issue-title: Issue reported for {vehicleName}
|
|
1694
|
+
modals:
|
|
1695
|
+
assigned-orders:
|
|
1696
|
+
|
|
1697
|
+
order:
|
|
1698
|
+
card:
|
|
1699
|
+
linked-order: Linked Order
|
|
1700
|
+
unknown-order: Unknown order
|
|
1701
|
+
no-type: No type
|
|
1702
|
+
pickup: Pickup
|
|
1703
|
+
dropoff: Dropoff
|
|
1704
|
+
return: Return
|
|
1705
|
+
waypoints: Waypoints
|
|
1706
|
+
additional-stop: additional stop
|
|
1707
|
+
additional-stops: additional stops
|
|
1708
|
+
no-pickup-address: No pickup address
|
|
1709
|
+
no-dropoff-address: No dropoff address
|
|
1710
|
+
no-route-details: No route details available.
|
|
1711
|
+
no-order-linked: No order is linked to this issue.
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import Controller from '@ember/controller';
|
|
2
|
-
import { inject as service } from '@ember/service';
|
|
3
|
-
|
|
4
|
-
export default class ConnectivityTelematicsIndexDetailsController extends Controller {
|
|
5
|
-
@service hostRouter;
|
|
6
|
-
|
|
7
|
-
get tabs() {
|
|
8
|
-
return [
|
|
9
|
-
{
|
|
10
|
-
route: 'connectivity.telematics.index.details.index',
|
|
11
|
-
label: 'Overview',
|
|
12
|
-
},
|
|
13
|
-
];
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
get actionButtons() {
|
|
17
|
-
return [
|
|
18
|
-
{
|
|
19
|
-
icon: 'pencil',
|
|
20
|
-
fn: () => this.hostRouter.transitionTo('console.fleet-ops.connectivity.telematics.index.edit', this.model),
|
|
21
|
-
},
|
|
22
|
-
];
|
|
23
|
-
}
|
|
24
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{{outlet}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{{outlet}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{{outlet}}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
<Layout::Resource::Panel
|
|
2
|
-
@resource={{@model}}
|
|
3
|
-
@controller={{this}}
|
|
4
|
-
@headerTitle={{or @model.name @model.provider}}
|
|
5
|
-
@actionButtons={{this.actionButtons}}
|
|
6
|
-
@onPressCancel={{transition-to "connectivity.telematics.index"}}
|
|
7
|
-
@onOverlayReady={{fn (mut this.overlay)}}
|
|
8
|
-
@headerClass="no-bottom-border"
|
|
9
|
-
@bodyClass="no-scroll"
|
|
10
|
-
>
|
|
11
|
-
<TabNavigation @tabs={{this.tabs}} @contentClass="scrollable" @tablistClass="pl-2">
|
|
12
|
-
{{outlet}}
|
|
13
|
-
</TabNavigation>
|
|
14
|
-
</Layout::Resource::Panel>
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
<Layout::Resource::Panel
|
|
2
|
-
@resource={{@model}}
|
|
3
|
-
@controller={{this}}
|
|
4
|
-
@headerTitle={{concat "Edit: " (or @model.name @model.provider)}}
|
|
5
|
-
@actionButtons={{this.actionButtons}}
|
|
6
|
-
@saveTask={{this.save}}
|
|
7
|
-
@onPressCancel={{this.cancel}}
|
|
8
|
-
@onOverlayReady={{fn (mut this.overlay)}}
|
|
9
|
-
>
|
|
10
|
-
<Telematic::Form @resource={{@model}} @controller={{this}} />
|
|
11
|
-
<Spacer @height="200px" />
|
|
12
|
-
</Layout::Resource::Panel>
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
<Layout::Resource::Panel
|
|
2
|
-
@resource={{this.telematic}}
|
|
3
|
-
@controller={{this}}
|
|
4
|
-
@actionButtons={{this.actionButtons}}
|
|
5
|
-
@headerTitle="Create a new telematic"
|
|
6
|
-
@saveTask={{this.save}}
|
|
7
|
-
@onPressCancel={{transition-to "connectivity.telematics.index"}}
|
|
8
|
-
@onOverlayReady={{fn (mut this.overlay)}}
|
|
9
|
-
>
|
|
10
|
-
<Telematic::Form @resource={{this.telematic}} @controller={{this}} />
|
|
11
|
-
<Spacer @height="200px" />
|
|
12
|
-
</Layout::Resource::Panel>
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default } from '@fleetbase/fleetops-engine/controllers/connectivity/telematics/index/details/events';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default } from '@fleetbase/fleetops-engine/controllers/connectivity/telematics/index/details/sensors';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default } from '@fleetbase/fleetops-engine/routes/connectivity/telematics/index/details/sensors';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default } from '@fleetbase/fleetops-engine/templates/connectivity/telematics/index/details/sensors';
|