@fleetbase/fleetops-engine 0.6.24 → 0.6.26
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/DRIVER_SCHEDULING.md +186 -0
- package/addon/components/driver/schedule.hbs +100 -0
- package/addon/components/driver/schedule.js +267 -0
- package/addon/components/order/kanban-card.hbs +2 -2
- package/addon/components/vehicle/details.hbs +594 -4
- package/addon/components/vehicle/form.hbs +467 -41
- package/addon/controllers/analytics/reports/index.js +3 -2
- package/addon/controllers/connectivity/devices/index.js +3 -3
- package/addon/controllers/connectivity/events/index.js +3 -2
- package/addon/controllers/connectivity/sensors/index.js +3 -5
- package/addon/controllers/connectivity/telematics/index.js +3 -1
- package/addon/controllers/maintenance/equipment/index.js +4 -4
- package/addon/controllers/maintenance/parts/index.js +4 -4
- package/addon/controllers/maintenance/work-orders/index.js +4 -4
- package/addon/controllers/management/contacts/customers.js +12 -10
- package/addon/controllers/management/contacts/index.js +3 -10
- package/addon/controllers/management/drivers/index/details.js +26 -13
- package/addon/controllers/management/drivers/index.js +4 -16
- package/addon/controllers/management/fleets/index.js +3 -13
- package/addon/controllers/management/fuel-reports/index.js +3 -10
- package/addon/controllers/management/issues/index.js +3 -12
- package/addon/controllers/management/places/index.js +4 -12
- package/addon/controllers/management/vehicles/index.js +3 -13
- package/addon/controllers/management/vendors/index.js +3 -13
- package/addon/controllers/operations/orders/index.js +5 -22
- package/addon/controllers/operations/scheduler/index.js +195 -6
- package/addon/controllers/operations/service-rates/index.js +34 -34
- package/addon/controllers/settings/payments/index.js +0 -6
- package/addon/routes.js +1 -0
- package/addon/services/driver-scheduling.js +171 -0
- package/addon/services/leaflet-layer-visibility-manager.js +4 -1
- package/addon/services/service-rate-actions.js +5 -1
- package/addon/templates/management/drivers/index/details/positions.hbs +1 -2
- package/addon/templates/management/drivers/index/details/schedule.hbs +1 -2
- package/addon/templates/operations/scheduler/index.hbs +48 -10
- package/addon/utils/fleet-ops-options.js +86 -0
- package/app/services/driver-scheduling.js +1 -0
- package/composer.json +1 -1
- package/extension.json +1 -1
- package/package.json +3 -3
- package/server/migrations/2025_11_17_033648_add_additional_columns_to_vehicles_table.php +142 -0
- package/server/src/Constraints/HOSConstraint.php +244 -0
- package/server/src/Http/Controllers/Api/v1/DriverController.php +14 -4
- package/server/src/Http/Controllers/Api/v1/OrderController.php +1 -1
- package/server/src/Http/Controllers/Api/v1/VehicleController.php +2 -2
- package/server/src/Http/Controllers/Internal/v1/OrderController.php +8 -3
- package/server/src/Http/Resources/v1/Driver.php +1 -1
- package/server/src/Http/Resources/v1/Vehicle.php +197 -19
- package/server/src/Http/Resources/v1/VehicleWithoutDriver.php +211 -28
- package/server/src/Models/Driver.php +15 -8
- package/server/src/Models/Vehicle.php +101 -15
|
@@ -120,30 +120,78 @@ class Vehicle extends Model
|
|
|
120
120
|
'speed',
|
|
121
121
|
'heading',
|
|
122
122
|
'altitude',
|
|
123
|
+
// Odometer & measurement
|
|
123
124
|
'odometer',
|
|
124
125
|
'odometer_unit',
|
|
126
|
+
'odometer_at_purchase',
|
|
127
|
+
'measurement_system',
|
|
125
128
|
'fuel_type',
|
|
126
129
|
'fuel_volume_unit',
|
|
130
|
+
// Body / usage
|
|
127
131
|
'trim',
|
|
128
132
|
'transmission',
|
|
129
|
-
'measurement_system',
|
|
130
133
|
'body_type',
|
|
131
134
|
'body_sub_type',
|
|
132
135
|
'usage_type',
|
|
133
136
|
'ownership_type',
|
|
134
137
|
'type',
|
|
135
138
|
'class',
|
|
139
|
+
// Identifiers
|
|
136
140
|
'plate_number',
|
|
137
141
|
'call_sign',
|
|
138
142
|
'serial_number',
|
|
143
|
+
'vin',
|
|
144
|
+
'vin_data',
|
|
145
|
+
// Financing
|
|
139
146
|
'financing_status',
|
|
147
|
+
'loan_number_of_payments',
|
|
148
|
+
'loan_first_payment',
|
|
149
|
+
'loan_amount',
|
|
150
|
+
// Lifecycle
|
|
151
|
+
'estimated_service_life_distance_unit',
|
|
152
|
+
'estimated_service_life_distance',
|
|
153
|
+
'estimated_service_life_months',
|
|
154
|
+
// Capacity / dimensions
|
|
155
|
+
'cargo_volume',
|
|
156
|
+
'passenger_volume',
|
|
157
|
+
'interior_volume',
|
|
158
|
+
'weight',
|
|
159
|
+
'width',
|
|
160
|
+
'length',
|
|
161
|
+
'height',
|
|
162
|
+
'towing_capacity',
|
|
163
|
+
'payload_capacity',
|
|
164
|
+
'seating_capacity',
|
|
165
|
+
'ground_clearance',
|
|
166
|
+
'bed_length',
|
|
167
|
+
'fuel_capacity',
|
|
168
|
+
// Regulatory / compliance
|
|
169
|
+
'emission_standard',
|
|
170
|
+
'dpf_equipped',
|
|
171
|
+
'scr_equipped',
|
|
172
|
+
'gvwr',
|
|
173
|
+
'gcwr',
|
|
174
|
+
// Engine specifications
|
|
175
|
+
'engine_number',
|
|
176
|
+
'engine_model',
|
|
177
|
+
'engine_make',
|
|
178
|
+
'engine_family',
|
|
179
|
+
'engine_configuration',
|
|
180
|
+
'engine_displacement',
|
|
181
|
+
'engine_size',
|
|
182
|
+
'horsepower',
|
|
183
|
+
'horsepower_rpm',
|
|
184
|
+
'torque',
|
|
185
|
+
'torque_rpm',
|
|
186
|
+
'number_of_cylinders',
|
|
187
|
+
'cylinder_arrangement',
|
|
188
|
+
// Financial values
|
|
140
189
|
'currency',
|
|
141
190
|
'insurance_value',
|
|
142
191
|
'depreciation_rate',
|
|
143
192
|
'current_value',
|
|
144
193
|
'acquisition_cost',
|
|
145
|
-
|
|
146
|
-
'vin_data',
|
|
194
|
+
// Other fields
|
|
147
195
|
'specs',
|
|
148
196
|
'details',
|
|
149
197
|
'notes',
|
|
@@ -195,18 +243,56 @@ class Vehicle extends Model
|
|
|
195
243
|
* @var array
|
|
196
244
|
*/
|
|
197
245
|
protected $casts = [
|
|
198
|
-
|
|
199
|
-
'
|
|
200
|
-
'
|
|
201
|
-
'
|
|
202
|
-
|
|
203
|
-
'
|
|
204
|
-
|
|
205
|
-
'
|
|
206
|
-
'
|
|
207
|
-
'
|
|
208
|
-
'
|
|
209
|
-
'
|
|
246
|
+
// Money values
|
|
247
|
+
'current_value' => Money::class,
|
|
248
|
+
'insurance_value' => Money::class,
|
|
249
|
+
'acquisition_cost' => Money::class,
|
|
250
|
+
// Spatial
|
|
251
|
+
'location' => Point::class,
|
|
252
|
+
// JSON
|
|
253
|
+
'meta' => Json::class,
|
|
254
|
+
'telematics' => Json::class,
|
|
255
|
+
'specs' => Json::class,
|
|
256
|
+
'details' => Json::class,
|
|
257
|
+
'vin_data' => Json::class,
|
|
258
|
+
// Dates
|
|
259
|
+
'purchased_at' => 'datetime',
|
|
260
|
+
'lease_expires_at' => 'datetime',
|
|
261
|
+
'loan_first_payment' => 'date',
|
|
262
|
+
// Booleans
|
|
263
|
+
'online' => 'boolean',
|
|
264
|
+
'dpf_equipped' => 'boolean',
|
|
265
|
+
'scr_equipped' => 'boolean',
|
|
266
|
+
// Integers
|
|
267
|
+
'odometer' => 'integer',
|
|
268
|
+
'odometer_at_purchase' => 'integer',
|
|
269
|
+
'loan_number_of_payments' => 'integer',
|
|
270
|
+
'estimated_service_life_distance' => 'integer',
|
|
271
|
+
'estimated_service_life_months' => 'integer',
|
|
272
|
+
'number_of_cylinders' => 'integer',
|
|
273
|
+
'horsepower_rpm' => 'integer',
|
|
274
|
+
'torque_rpm' => 'integer',
|
|
275
|
+
'seating_capacity' => 'integer',
|
|
276
|
+
// Decimals
|
|
277
|
+
'loan_amount' => 'decimal:2',
|
|
278
|
+
'cargo_volume' => 'decimal:2',
|
|
279
|
+
'passenger_volume' => 'decimal:2',
|
|
280
|
+
'interior_volume' => 'decimal:2',
|
|
281
|
+
'weight' => 'decimal:2',
|
|
282
|
+
'width' => 'decimal:2',
|
|
283
|
+
'length' => 'decimal:2',
|
|
284
|
+
'height' => 'decimal:2',
|
|
285
|
+
'towing_capacity' => 'decimal:2',
|
|
286
|
+
'payload_capacity' => 'decimal:2',
|
|
287
|
+
'ground_clearance' => 'decimal:2',
|
|
288
|
+
'bed_length' => 'decimal:2',
|
|
289
|
+
'fuel_capacity' => 'decimal:2',
|
|
290
|
+
'engine_displacement' => 'decimal:2',
|
|
291
|
+
'engine_size' => 'decimal:2',
|
|
292
|
+
'horsepower' => 'decimal:2',
|
|
293
|
+
'torque' => 'decimal:2',
|
|
294
|
+
'gvwr' => 'decimal:2',
|
|
295
|
+
'gcwr' => 'decimal:2',
|
|
210
296
|
];
|
|
211
297
|
|
|
212
298
|
public function photo(): BelongsTo
|