@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.
Files changed (429) hide show
  1. package/addon/components/activity/form.hbs +2 -12
  2. package/addon/components/activity/logic-builder.hbs +1 -1
  3. package/addon/components/custom-entity/form.hbs +4 -20
  4. package/addon/components/device/form.hbs +3 -15
  5. package/addon/components/device/panel-header.hbs +13 -2
  6. package/addon/components/driver/details.hbs +33 -2
  7. package/addon/components/driver/form.hbs +42 -0
  8. package/addon/components/driver/panel-header.hbs +8 -1
  9. package/addon/components/driver/schedule.hbs +115 -76
  10. package/addon/components/driver/schedule.js +349 -157
  11. package/addon/components/driver-onboard-settings.hbs +2 -8
  12. package/addon/components/entity-field-editing-settings.hbs +2 -5
  13. package/addon/components/equipment/card.hbs +49 -0
  14. package/addon/components/equipment/card.js +6 -0
  15. package/addon/components/equipment/details.hbs +83 -44
  16. package/addon/components/equipment/form.hbs +111 -41
  17. package/addon/components/equipment/form.js +78 -10
  18. package/addon/components/equipment/panel-header.hbs +36 -0
  19. package/addon/components/equipment/panel-header.js +2 -0
  20. package/addon/components/fleet/driver-listing.hbs +3 -1
  21. package/addon/components/fleet/vehicle-listing.hbs +4 -7
  22. package/addon/components/fleet-panel/vehicle-listing.hbs +1 -6
  23. package/addon/components/fuel-report/form.hbs +1 -5
  24. package/addon/components/layout/fleet-ops-sidebar.hbs +40 -36
  25. package/addon/components/layout/fleet-ops-sidebar.js +61 -10
  26. package/addon/components/maintenance/cost-panel.hbs +176 -0
  27. package/addon/components/maintenance/cost-panel.js +241 -0
  28. package/addon/components/maintenance/details.hbs +123 -60
  29. package/addon/components/maintenance/form.hbs +138 -78
  30. package/addon/components/maintenance/form.js +131 -6
  31. package/addon/components/maintenance/panel-header.hbs +31 -0
  32. package/addon/components/maintenance/panel-header.js +2 -0
  33. package/addon/components/maintenance-schedule/details.hbs +260 -0
  34. package/addon/components/maintenance-schedule/details.js +158 -0
  35. package/addon/components/maintenance-schedule/form.hbs +287 -0
  36. package/addon/components/maintenance-schedule/form.js +199 -0
  37. package/addon/components/map/container.hbs +1 -1
  38. package/addon/components/map/drawer/device-event-listing.hbs +1 -1
  39. package/addon/components/map/drawer/driver-listing.hbs +1 -6
  40. package/addon/components/map/drawer/place-listing.hbs +1 -6
  41. package/addon/components/map/drawer/vehicle-listing.hbs +1 -6
  42. package/addon/components/map/drawer.hbs +8 -1
  43. package/addon/components/map/leaflet-live-map.hbs +2 -1
  44. package/addon/components/map/toolbar/visibility-control-panel.hbs +1 -1
  45. package/addon/components/map/toolbar.hbs +4 -29
  46. package/addon/components/modals/add-driver-shift.hbs +155 -0
  47. package/addon/components/modals/add-driver-shift.js +210 -0
  48. package/addon/components/modals/bulk-assign-orders.hbs +67 -0
  49. package/addon/components/modals/driver-shift.hbs +43 -0
  50. package/addon/components/modals/driver-shift.js +56 -0
  51. package/addon/components/modals/entity-form.hbs +5 -28
  52. package/addon/components/modals/orchestrator-import.hbs +351 -0
  53. package/addon/components/modals/orchestrator-import.js +807 -0
  54. package/addon/components/modals/order-config-new-status.hbs +1 -5
  55. package/addon/components/modals/scheduling-conflict.hbs +47 -0
  56. package/addon/components/modals/scheduling-conflict.js +53 -0
  57. package/addon/components/modals/send-work-order.hbs +91 -0
  58. package/addon/components/modals/send-work-order.js +3 -0
  59. package/addon/components/modals/service-area-form.hbs +1 -6
  60. package/addon/components/modals/set-driver-availability.hbs +50 -0
  61. package/addon/components/modals/set-driver-availability.js +57 -0
  62. package/addon/components/modals/update-order-activity.hbs +13 -9
  63. package/addon/components/modals/user-form.hbs +1 -5
  64. package/addon/components/modals/vehicle-form.hbs +17 -102
  65. package/addon/components/modals/vendor-form.hbs +15 -82
  66. package/addon/components/orchestrator/card-fields-settings.hbs +76 -0
  67. package/addon/components/orchestrator/card-fields-settings.js +134 -0
  68. package/addon/components/orchestrator/order-pool.hbs +264 -0
  69. package/addon/components/orchestrator/order-pool.js +394 -0
  70. package/addon/components/orchestrator/phase-builder.hbs +162 -0
  71. package/addon/components/orchestrator/phase-builder.js +162 -0
  72. package/addon/components/orchestrator/plan-viewer.hbs +278 -0
  73. package/addon/components/orchestrator/plan-viewer.js +342 -0
  74. package/addon/components/orchestrator/resource-panel.hbs +301 -0
  75. package/addon/components/orchestrator/resource-panel.js +106 -0
  76. package/addon/components/orchestrator-workbench.hbs +318 -0
  77. package/addon/components/orchestrator-workbench.js +1087 -0
  78. package/addon/components/order/details/custom-fields.hbs +10 -1
  79. package/addon/components/order/details/detail.hbs +37 -2
  80. package/addon/components/order/details/detail.js +0 -1
  81. package/addon/components/order/details/integrated-vendor-details.hbs +4 -4
  82. package/addon/components/order/details/notes.hbs +1 -7
  83. package/addon/components/order/details/route.hbs +1 -5
  84. package/addon/components/order/form/details.hbs +44 -10
  85. package/addon/components/order/form/details.js +57 -0
  86. package/addon/components/order/form/notes.hbs +1 -7
  87. package/addon/components/order/form/payload.hbs +1 -7
  88. package/addon/components/order/form/route.hbs +3 -15
  89. package/addon/components/order/header.hbs +1 -7
  90. package/addon/components/order/route-editor.hbs +4 -25
  91. package/addon/components/order/schedule-card.hbs +102 -95
  92. package/addon/components/order/schedule-card.js +8 -3
  93. package/addon/components/order-config-manager/details.hbs +2 -10
  94. package/addon/components/order-config-manager/entities.hbs +1 -7
  95. package/addon/components/order-config-manager.hbs +1 -6
  96. package/addon/components/part/card.hbs +49 -0
  97. package/addon/components/part/card.js +6 -0
  98. package/addon/components/part/details.hbs +102 -56
  99. package/addon/components/part/form.hbs +131 -56
  100. package/addon/components/part/form.js +78 -11
  101. package/addon/components/part/panel-header.hbs +36 -0
  102. package/addon/components/part/panel-header.js +2 -0
  103. package/addon/components/place/form.hbs +1 -7
  104. package/addon/components/sensor/details.hbs +1 -1
  105. package/addon/components/sensor/form.hbs +5 -3
  106. package/addon/components/sensor/panel-header.hbs +8 -1
  107. package/addon/components/service-area/form.hbs +1 -6
  108. package/addon/components/service-rate/form.hbs +12 -60
  109. package/addon/components/telematic/form.hbs +6 -2
  110. package/addon/components/vehicle/details/maintenance-history.hbs +42 -0
  111. package/addon/components/vehicle/details/maintenance-history.js +32 -0
  112. package/addon/components/vehicle/details/schedules.hbs +40 -0
  113. package/addon/components/vehicle/details/schedules.js +32 -0
  114. package/addon/components/vehicle/details/work-orders.hbs +42 -0
  115. package/addon/components/vehicle/details/work-orders.js +32 -0
  116. package/addon/components/vehicle/details.hbs +30 -0
  117. package/addon/components/vehicle/form.hbs +39 -0
  118. package/addon/components/vehicle/panel-header.hbs +19 -49
  119. package/addon/components/warranty/details.hbs +3 -2
  120. package/addon/components/warranty/form.hbs +3 -17
  121. package/addon/components/work-order/details.hbs +135 -40
  122. package/addon/components/work-order/form.hbs +178 -45
  123. package/addon/components/work-order/form.js +197 -4
  124. package/addon/components/work-order/panel-header.hbs +31 -0
  125. package/addon/components/work-order/panel-header.js +2 -0
  126. package/addon/controllers/connectivity/devices/index/details.js +1 -1
  127. package/addon/controllers/maintenance/equipment/index/details/index.js +0 -1
  128. package/addon/controllers/maintenance/equipment/index/details.js +36 -1
  129. package/addon/controllers/maintenance/equipment/index/edit.js +56 -1
  130. package/addon/controllers/maintenance/equipment/index/new.js +32 -1
  131. package/addon/controllers/maintenance/equipment/index.js +127 -113
  132. package/addon/controllers/maintenance/maintenances/index/details/index.js +3 -0
  133. package/addon/controllers/maintenance/maintenances/index/details.js +54 -0
  134. package/addon/controllers/maintenance/maintenances/index/edit.js +68 -0
  135. package/addon/controllers/maintenance/maintenances/index/new.js +34 -0
  136. package/addon/controllers/maintenance/maintenances/index.js +191 -0
  137. package/addon/controllers/maintenance/parts/index/details/index.js +0 -1
  138. package/addon/controllers/maintenance/parts/index/details.js +36 -1
  139. package/addon/controllers/maintenance/parts/index/edit.js +56 -1
  140. package/addon/controllers/maintenance/parts/index/new.js +32 -1
  141. package/addon/controllers/maintenance/parts/index.js +135 -113
  142. package/addon/controllers/maintenance/schedules/index/details.js +115 -0
  143. package/addon/controllers/maintenance/schedules/index/edit.js +41 -0
  144. package/addon/controllers/maintenance/schedules/index/new.js +33 -0
  145. package/addon/controllers/maintenance/schedules/index.js +280 -0
  146. package/addon/controllers/maintenance/work-orders/index/details.js +41 -1
  147. package/addon/controllers/maintenance/work-orders/index/edit.js +67 -1
  148. package/addon/controllers/maintenance/work-orders/index/new.js +43 -1
  149. package/addon/controllers/maintenance/work-orders/index.js +105 -113
  150. package/addon/controllers/management/drivers/index/details.js +6 -1
  151. package/addon/controllers/management/vehicles/index/details.js +65 -0
  152. package/addon/controllers/management/vehicles/index.js +18 -0
  153. package/addon/controllers/operations/orchestrator.js +10 -0
  154. package/addon/controllers/operations/orders/index.js +6 -0
  155. package/addon/controllers/operations/scheduler/fleet-schedule.js +341 -0
  156. package/addon/controllers/operations/scheduler/index.js +799 -275
  157. package/addon/controllers/operations/scheduler.js +21 -0
  158. package/addon/controllers/settings/orchestrator.js +70 -0
  159. package/addon/controllers/settings/scheduling.js +155 -0
  160. package/addon/extension.js +19 -0
  161. package/addon/instance-initializers/register-vroom-allocation.js +27 -0
  162. package/addon/models/maintenance-schedule.js +61 -0
  163. package/addon/routes/maintenance/equipment/index/details.js +27 -1
  164. package/addon/routes/maintenance/equipment/index/edit.js +27 -1
  165. package/addon/routes/maintenance/maintenances/index/details/index.js +3 -0
  166. package/addon/routes/maintenance/maintenances/index/details.js +29 -0
  167. package/addon/routes/maintenance/maintenances/index/edit.js +29 -0
  168. package/addon/routes/maintenance/maintenances/index/new.js +3 -0
  169. package/addon/routes/maintenance/maintenances/index.js +23 -0
  170. package/addon/routes/maintenance/maintenances.js +3 -0
  171. package/addon/routes/maintenance/parts/index/details.js +27 -1
  172. package/addon/routes/maintenance/parts/index/edit.js +27 -1
  173. package/addon/routes/maintenance/schedules/index/details/index.js +2 -0
  174. package/addon/routes/maintenance/schedules/index/details/work-orders.js +11 -0
  175. package/addon/routes/maintenance/schedules/index/details.js +25 -0
  176. package/addon/routes/maintenance/schedules/index/edit.js +25 -0
  177. package/addon/routes/maintenance/schedules/index/new.js +2 -0
  178. package/addon/routes/maintenance/schedules/index.js +21 -0
  179. package/addon/routes/maintenance/schedules.js +2 -0
  180. package/addon/routes/maintenance/work-orders/index/details.js +27 -1
  181. package/addon/routes/maintenance/work-orders/index/edit.js +27 -1
  182. package/addon/routes/management/vehicles/index/details/maintenance-history.js +3 -0
  183. package/addon/routes/management/vehicles/index/details/schedules.js +3 -0
  184. package/addon/routes/management/vehicles/index/details/work-orders.js +3 -0
  185. package/addon/routes/operations/orchestrator.js +23 -0
  186. package/addon/routes/operations/scheduler/fleet-schedule.js +28 -0
  187. package/addon/routes/operations/scheduler/index.js +48 -26
  188. package/addon/routes/operations/scheduler.js +14 -1
  189. package/addon/routes/settings/orchestrator.js +27 -0
  190. package/addon/routes/settings/scheduling.js +3 -0
  191. package/addon/routes.js +31 -1
  192. package/addon/services/driver-actions.js +40 -7
  193. package/addon/services/driver-scheduling.js +4 -1
  194. package/addon/services/equipment-actions.js +15 -5
  195. package/addon/services/leaflet-map-manager.js +14 -6
  196. package/addon/services/maintenance-actions.js +17 -14
  197. package/addon/services/maintenance-schedule-actions.js +118 -0
  198. package/addon/services/orchestration-engine-interface.js +49 -0
  199. package/addon/services/orchestration-engine.js +74 -0
  200. package/addon/services/order-actions.js +15 -0
  201. package/addon/services/order-allocation.js +116 -0
  202. package/addon/services/part-actions.js +12 -2
  203. package/addon/services/scheduling.js +316 -0
  204. package/addon/services/vehicle-actions.js +70 -7
  205. package/addon/services/vroom-allocation-engine.js +45 -0
  206. package/addon/services/work-order-actions.js +80 -0
  207. package/addon/styles/fleetops-engine.css +1658 -0
  208. package/addon/templates/analytics/reports/index/edit.hbs +1 -1
  209. package/addon/templates/analytics/reports/index/new.hbs +1 -1
  210. package/addon/templates/application.hbs +6 -1
  211. package/addon/templates/connectivity/devices/index/details/events.hbs +0 -1
  212. package/addon/templates/connectivity/devices.hbs +0 -1
  213. package/addon/templates/connectivity/events/index/details.hbs +0 -1
  214. package/addon/templates/connectivity/events.hbs +0 -1
  215. package/addon/templates/connectivity/sensors.hbs +0 -1
  216. package/addon/templates/connectivity/telematics/index/details/devices.hbs +0 -1
  217. package/addon/templates/connectivity/telematics/index/details/events.hbs +0 -1
  218. package/addon/templates/connectivity/telematics/index/details/sensors.hbs +0 -1
  219. package/addon/templates/connectivity/telematics.hbs +0 -1
  220. package/addon/templates/connectivity/tracking.hbs +0 -1
  221. package/addon/templates/connectivity.hbs +0 -1
  222. package/addon/templates/maintenance/equipment/index/details/index.hbs +1 -2
  223. package/addon/templates/maintenance/equipment/index/details.hbs +15 -2
  224. package/addon/templates/maintenance/equipment/index/edit.hbs +12 -2
  225. package/addon/templates/maintenance/equipment/index/new.hbs +1 -2
  226. package/addon/templates/maintenance/equipment/index.hbs +48 -13
  227. package/addon/templates/maintenance/equipment.hbs +0 -1
  228. package/addon/templates/maintenance/maintenances/index/details/index.hbs +1 -0
  229. package/addon/templates/maintenance/maintenances/index/details.hbs +15 -0
  230. package/addon/templates/maintenance/maintenances/index/edit.hbs +12 -0
  231. package/addon/templates/maintenance/maintenances/index/new.hbs +11 -0
  232. package/addon/templates/maintenance/maintenances/index.hbs +14 -0
  233. package/addon/templates/maintenance/maintenances.hbs +1 -0
  234. package/addon/templates/maintenance/parts/index/details/index.hbs +1 -2
  235. package/addon/templates/maintenance/parts/index/details.hbs +15 -2
  236. package/addon/templates/maintenance/parts/index/edit.hbs +12 -2
  237. package/addon/templates/maintenance/parts/index/new.hbs +1 -2
  238. package/addon/templates/maintenance/parts/index.hbs +48 -13
  239. package/addon/templates/maintenance/parts.hbs +0 -1
  240. package/addon/templates/maintenance/schedules/index/details/index.hbs +1 -0
  241. package/addon/templates/maintenance/schedules/index/details/work-orders.hbs +39 -0
  242. package/addon/templates/maintenance/schedules/index/details.hbs +14 -0
  243. package/addon/templates/maintenance/schedules/index/edit.hbs +12 -0
  244. package/addon/templates/maintenance/schedules/index/new.hbs +11 -0
  245. package/addon/templates/maintenance/schedules/index.hbs +40 -0
  246. package/addon/templates/maintenance/schedules.hbs +1 -0
  247. package/addon/templates/maintenance/work-orders/index/details.hbs +2 -1
  248. package/addon/templates/maintenance/work-orders/index/edit.hbs +2 -4
  249. package/addon/templates/maintenance/work-orders/index/new.hbs +1 -2
  250. package/addon/templates/maintenance/work-orders.hbs +0 -1
  251. package/addon/templates/management/contacts/customers/edit.hbs +1 -2
  252. package/addon/templates/management/contacts/customers/new.hbs +1 -2
  253. package/addon/templates/management/contacts/customers.hbs +1 -1
  254. package/addon/templates/management/contacts/index/edit.hbs +1 -2
  255. package/addon/templates/management/contacts/index/new.hbs +1 -2
  256. package/addon/templates/management/drivers/index/details/orders.hbs +0 -1
  257. package/addon/templates/management/drivers/index/edit.hbs +1 -2
  258. package/addon/templates/management/drivers/index/new.hbs +1 -2
  259. package/addon/templates/management/fleets/index/edit.hbs +1 -2
  260. package/addon/templates/management/fleets/index/new.hbs +1 -2
  261. package/addon/templates/management/fleets/index.hbs +1 -2
  262. package/addon/templates/management/fuel-reports/index/edit.hbs +1 -2
  263. package/addon/templates/management/fuel-reports/index/new.hbs +1 -2
  264. package/addon/templates/management/fuel-reports/index.hbs +1 -2
  265. package/addon/templates/management/issues/index/edit.hbs +1 -2
  266. package/addon/templates/management/issues/index/new.hbs +1 -2
  267. package/addon/templates/management/issues/index.hbs +1 -2
  268. package/addon/templates/management/places/index/details/activity.hbs +0 -1
  269. package/addon/templates/management/places/index/details/comments.hbs +0 -1
  270. package/addon/templates/management/places/index/details/documents.hbs +0 -1
  271. package/addon/templates/management/places/index/details/map.hbs +0 -1
  272. package/addon/templates/management/places/index/details/operations.hbs +0 -1
  273. package/addon/templates/management/places/index/details/performance.hbs +0 -1
  274. package/addon/templates/management/places/index/details/rules.hbs +0 -1
  275. package/addon/templates/management/vehicles/index/details/equipment.hbs +0 -1
  276. package/addon/templates/management/vehicles/index/details/maintenance-history.hbs +2 -0
  277. package/addon/templates/management/vehicles/index/details/schedules.hbs +2 -0
  278. package/addon/templates/management/vehicles/index/details/work-orders.hbs +2 -0
  279. package/addon/templates/management/vehicles/index/details.hbs +1 -1
  280. package/addon/templates/management/vehicles/index/edit.hbs +1 -2
  281. package/addon/templates/management/vehicles/index/new.hbs +1 -2
  282. package/addon/templates/management/vendors/index/edit.hbs +1 -2
  283. package/addon/templates/management/vendors/index/new.hbs +1 -2
  284. package/addon/templates/management/vendors/index.hbs +1 -2
  285. package/addon/templates/management/vendors/integrated.hbs +1 -2
  286. package/addon/templates/operations/orchestrator.hbs +1 -0
  287. package/addon/templates/operations/orders/index.hbs +6 -1
  288. package/addon/templates/operations/scheduler/fleet-schedule.hbs +41 -0
  289. package/addon/templates/operations/scheduler/index.hbs +147 -88
  290. package/addon/templates/operations/scheduler.hbs +7 -1
  291. package/addon/templates/settings/avatars.hbs +1 -1
  292. package/addon/templates/settings/orchestrator.hbs +65 -0
  293. package/addon/templates/settings/payments/index.hbs +1 -5
  294. package/addon/templates/settings/scheduling.hbs +82 -0
  295. package/addon/utils/create-full-calendar-event-from-order.js +52 -14
  296. package/addon/utils/create-full-calendar-event-from-schedule-item.js +50 -0
  297. package/addon/utils/fleet-ops-options.js +254 -0
  298. package/addon/utils/route-colors.js +99 -0
  299. package/addon/utils/to-calendar-date.js +70 -0
  300. package/app/components/driver/schedule.js +1 -0
  301. package/app/components/maintenance/cost-panel.js +1 -0
  302. package/app/components/maintenance/panel-header.js +1 -0
  303. package/app/components/maintenance-schedule/details.js +1 -0
  304. package/app/components/maintenance-schedule/form.js +1 -0
  305. package/app/components/modals/add-driver-shift.js +1 -0
  306. package/app/components/modals/bulk-assign-orders.js +1 -0
  307. package/app/components/modals/driver-shift.js +1 -0
  308. package/app/components/modals/orchestrator-import.js +1 -0
  309. package/app/components/modals/scheduling-conflict.js +1 -0
  310. package/app/components/modals/send-work-order.js +1 -0
  311. package/app/components/modals/set-driver-availability.js +1 -0
  312. package/app/components/orchestrator/card-fields-settings.js +1 -0
  313. package/app/components/orchestrator/order-pool.js +1 -0
  314. package/app/components/orchestrator/phase-builder.js +1 -0
  315. package/app/components/orchestrator/plan-viewer.js +1 -0
  316. package/app/components/orchestrator/resource-panel.js +1 -0
  317. package/app/components/orchestrator-workbench.js +1 -0
  318. package/app/components/vehicle/details/maintenance-history.js +1 -0
  319. package/app/components/vehicle/details/schedules.js +1 -0
  320. package/app/components/vehicle/details/work-orders.js +1 -0
  321. package/app/controllers/operations/orchestrator.js +1 -0
  322. package/app/controllers/settings/orchestrator.js +1 -0
  323. package/app/controllers/settings/scheduling.js +1 -0
  324. package/app/routes/operations/orchestrator.js +1 -0
  325. package/app/routes/settings/orchestrator.js +1 -0
  326. package/app/routes/settings/scheduling.js +1 -0
  327. package/app/services/maintenance-schedule-actions.js +1 -0
  328. package/app/services/orchestration-engine-interface.js +1 -0
  329. package/app/services/orchestration-engine.js +1 -0
  330. package/app/services/order-allocation.js +1 -0
  331. package/app/services/scheduling.js +1 -0
  332. package/app/services/vroom-allocation-engine.js +1 -0
  333. package/app/templates/settings/scheduling.js +1 -0
  334. package/app/utils/create-full-calendar-event-from-schedule-item.js +1 -0
  335. package/app/utils/route-colors.js +1 -0
  336. package/composer.json +5 -3
  337. package/extension.json +1 -1
  338. package/package.json +6 -5
  339. package/server/config/fleetops.php +20 -1
  340. package/server/migrations/2025_08_28_054927_create_parts_table.php +2 -2
  341. package/server/migrations/2025_08_28_054932_add_public_id_to_maintenance_tables.php +45 -0
  342. package/server/migrations/2025_09_01_000001_create_maintenance_schedules_table.php +88 -0
  343. package/server/migrations/2026_04_01_000001_fix_monetary_columns_in_parts_table.php +48 -0
  344. package/server/migrations/2026_04_01_000003_add_photo_uuid_to_equipment_and_parts_tables.php +61 -0
  345. package/server/migrations/2026_04_01_000004_add_public_id_to_equipments_table.php +38 -0
  346. package/server/migrations/2026_04_01_000005_add_missing_columns_to_parts_table.php +67 -0
  347. package/server/migrations/2026_04_04_000001_add_reminder_offsets_to_maintenance_schedules.php +44 -0
  348. package/server/migrations/2026_04_08_000001_add_orchestrator_columns_to_vehicles_table.php +58 -0
  349. package/server/migrations/2026_04_08_000002_add_orchestrator_columns_to_drivers_table.php +41 -0
  350. package/server/migrations/2026_04_08_000003_add_orchestrator_columns_to_orders_table.php +38 -0
  351. package/server/migrations/2026_04_08_000004_add_orchestrator_columns_to_payloads_table.php +41 -0
  352. package/server/migrations/2026_04_08_000005_add_orchestrator_columns_to_waypoints_table.php +38 -0
  353. package/server/migrations/2026_04_09_000001_create_manifests_table.php +48 -0
  354. package/server/migrations/2026_04_09_000002_create_manifest_stops_table.php +48 -0
  355. package/server/migrations/2026_04_09_000003_add_manifest_uuid_to_orders_table.php +28 -0
  356. package/server/migrations/2026_04_13_000001_add_pod_notes_columns_to_waypoints_table.php +39 -0
  357. package/server/resources/views/mail/maintenance-schedule-reminder.blade.php +59 -0
  358. package/server/resources/views/mail/work-order-dispatched.blade.php +67 -0
  359. package/server/src/Auth/Schemas/FleetOps.php +44 -0
  360. package/server/src/Console/Commands/ProcessMaintenanceTriggers.php +150 -0
  361. package/server/src/Console/Commands/SendMaintenanceReminders.php +128 -0
  362. package/server/src/Http/Controllers/Internal/v1/DriverController.php +1 -0
  363. package/server/src/Http/Controllers/Internal/v1/EquipmentController.php +27 -0
  364. package/server/src/Http/Controllers/Internal/v1/LiveController.php +9 -2
  365. package/server/src/Http/Controllers/Internal/v1/MaintenanceController.php +165 -0
  366. package/server/src/Http/Controllers/Internal/v1/MaintenanceScheduleController.php +304 -0
  367. package/server/src/Http/Controllers/Internal/v1/ManifestController.php +138 -0
  368. package/server/src/Http/Controllers/Internal/v1/OrchestrationController.php +975 -0
  369. package/server/src/Http/Controllers/Internal/v1/OrderController.php +42 -0
  370. package/server/src/Http/Controllers/Internal/v1/PartController.php +27 -0
  371. package/server/src/Http/Controllers/Internal/v1/SettingController.php +118 -0
  372. package/server/src/Http/Controllers/Internal/v1/Traits/DriverSchedulingTrait.php +214 -0
  373. package/server/src/Http/Controllers/Internal/v1/WorkOrderController.php +68 -0
  374. package/server/src/Http/Resources/v1/Driver.php +1 -0
  375. package/server/src/Http/Resources/v1/Maintenance.php +138 -0
  376. package/server/src/Http/Resources/v1/MaintenanceSchedule.php +137 -0
  377. package/server/src/Http/Resources/v1/Orchestrator/Order.php +116 -0
  378. package/server/src/Http/Resources/v1/Order.php +7 -4
  379. package/server/src/Http/Resources/v1/Waypoint.php +7 -0
  380. package/server/src/Http/Resources/v1/WorkOrder.php +136 -0
  381. package/server/src/Imports/EquipmentImport.php +32 -0
  382. package/server/src/Imports/MaintenanceImport.php +32 -0
  383. package/server/src/Imports/MaintenanceScheduleImport.php +32 -0
  384. package/server/src/Imports/PartImport.php +32 -0
  385. package/server/src/Imports/WorkOrderImport.php +32 -0
  386. package/server/src/Jobs/ProcessAllocationJob.php +119 -0
  387. package/server/src/Listeners/HandleDeliveryCompletion.php +47 -0
  388. package/server/src/Listeners/NotifyDriverOnShiftChange.php +63 -0
  389. package/server/src/Mail/MaintenanceScheduleReminder.php +68 -0
  390. package/server/src/Mail/WorkOrderDispatched.php +58 -0
  391. package/server/src/Models/Asset.php +2 -2
  392. package/server/src/Models/Device.php +1 -1
  393. package/server/src/Models/Driver.php +82 -4
  394. package/server/src/Models/Equipment.php +62 -2
  395. package/server/src/Models/Maintenance.php +127 -9
  396. package/server/src/Models/MaintenanceSchedule.php +353 -0
  397. package/server/src/Models/Manifest.php +214 -0
  398. package/server/src/Models/ManifestStop.php +162 -0
  399. package/server/src/Models/Order.php +70 -0
  400. package/server/src/Models/OrderConfig.php +5 -2
  401. package/server/src/Models/Part.php +69 -3
  402. package/server/src/Models/Payload.php +7 -2
  403. package/server/src/Models/Place.php +1 -1
  404. package/server/src/Models/Sensor.php +1 -1
  405. package/server/src/Models/ServiceQuote.php +1 -1
  406. package/server/src/Models/Vehicle.php +20 -1
  407. package/server/src/Models/Warranty.php +1 -1
  408. package/server/src/Models/Waypoint.php +7 -1
  409. package/server/src/Models/WorkOrder.php +122 -12
  410. package/server/src/Notifications/DriverShiftChanged.php +110 -0
  411. package/server/src/Observers/WorkOrderObserver.php +107 -0
  412. package/server/src/Orchestration/Contracts/OrchestrationEngineInterface.php +63 -0
  413. package/server/src/Orchestration/Engines/DriverAssignmentEngine.php +265 -0
  414. package/server/src/Orchestration/Engines/GreedyOrchestrationEngine.php +155 -0
  415. package/server/src/Orchestration/Engines/RouteSequencingEngine.php +272 -0
  416. package/server/src/Orchestration/Engines/VroomOrchestrationEngine.php +192 -0
  417. package/server/src/Orchestration/OrchestrationEngineRegistry.php +83 -0
  418. package/server/src/Orchestration/Support/OrchestrationPayloadBuilder.php +290 -0
  419. package/server/src/Providers/EventServiceProvider.php +7 -1
  420. package/server/src/Providers/FleetOpsServiceProvider.php +42 -15
  421. package/server/src/routes.php +65 -4
  422. package/translations/ar-ae.yml +44 -12
  423. package/translations/bg-bg.yaml +51 -10
  424. package/translations/en-us.yaml +444 -1
  425. package/translations/fr-fr.yaml +51 -10
  426. package/translations/mn-mn.yaml +51 -10
  427. package/translations/pt-br.yaml +51 -10
  428. package/translations/ru-ru.yaml +51 -10
  429. package/translations/vi-vn.yaml +48 -12
@@ -28,6 +28,8 @@ common:
28
28
  select-resource-filter-by: '{resource} -г шүүлтүүрээр сонгох'
29
29
  table-view: Хүснэгтийн харагдац
30
30
  grid-view: Сүлжээний харагдац
31
+ calendar-view: Хуанлийн харагдац
32
+ change-layout: Загварыг өөрчлөх
31
33
  livemap: Амьд газрын зураг
32
34
  tracking: Хянах
33
35
  activity: Үйл ажиллагаа
@@ -37,6 +39,13 @@ common:
37
39
  edit-address: Хаягийг засах
38
40
  new-address: Шинэ хаяг
39
41
  select-address: Хаяг сонгох
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: Үйл ажиллагаа
42
51
  dashboard: Хяналтын самбар
@@ -432,7 +441,6 @@ device:
432
441
  warranty: Баталгаа
433
442
  warranty-placeholder: Баталгааг сонгоно уу
434
443
  notes: Тэмдэглэл
435
- notes-placeholder: Тэмдэглэл
436
444
  entity:
437
445
  fields:
438
446
  declare: Мэдэгдэх
@@ -563,7 +571,6 @@ order:
563
571
  invalid-coordinates: Буруу координатууд!
564
572
  items-drop: Бараа буух газар
565
573
  loading-message: Үйлчилгээний үнийн саналуудыг ачааллаж байна...
566
- notes-placeholder: Захиалгын тэмдэглэл энд оруулна уу....
567
574
  notes-title: Тэмдэглэл
568
575
  optimize-route: Маршрутыг оновчтой болгох
569
576
  optimize-route-help-text: Fleetbase маршрутыг автоматаар оновчтой болгоно.
@@ -690,7 +697,6 @@ order:
690
697
  vehicle-assigned: Тээврийн хэрэгсэл
691
698
  no-driver: Жолооч байхгүй
692
699
  no-vehicle: Тээврийн хэрэгсэл байхгүй
693
- select-driver: Жолоочийг Сонгох
694
700
  select-vehicle: Тээврийн хэрэгслийг Сонгох
695
701
  kanban:
696
702
  status-updated: Захиалгын үйл ажиллагаа {status} төлөвт шинэчлэгдлээ.
@@ -932,7 +938,6 @@ vehicle:
932
938
  make: Үйлдвэрлэгч
933
939
  model: Загвар
934
940
  plate-number: Торгон дугаар
935
- select-driver: Жолооч сонгох
936
941
  upload-new-photo: Шинэ зураг оруулах
937
942
  vehicle-make: Тээврийн хэрэгслийн үйлдвэрлэгч
938
943
  vehicle-model: Тээврийн хэрэгслийн загвар
@@ -1172,12 +1177,53 @@ scheduler:
1172
1177
  scheduled-orders: Төлөвлөгдсөн захиалгууд
1173
1178
  unauthorized-to-schedule: Та захиалгыг төлөвлөх эрхгүй байна.
1174
1179
  scheduling-for: '{orderId} захиалгын төлөвлөлт'
1180
+ add-shift: Add Shift
1181
+ create-shift: Create Shift
1182
+ edit-shift: Edit Shift
1183
+ delete-shift: Delete Shift
1184
+ delete-shift-confirm: Are you sure you want to delete this shift? This action cannot be undone.
1185
+ shift-created: Shift created successfully.
1186
+ shift-updated: Shift updated successfully.
1187
+ shift-title: Shift Title
1188
+ shift-title-placeholder: e.g. Morning Delivery Run
1189
+ shift-start: Shift Start
1190
+ shift-end: Shift End
1191
+ shift-notes-placeholder: Optional notes about this shift
1192
+ select-start-datetime: Select start date & time
1193
+ select-end-datetime: Select end date & time
1194
+ select-driver: Select Driver
1195
+ upcoming-shifts: Upcoming Shifts
1196
+ no-upcoming-shifts: No upcoming shifts scheduled.
1197
+ hours-of-service: Hours of Service
1198
+ daily-driving-hours: Daily Driving Hours
1199
+ weekly-hours: Weekly Hours
1200
+ compliance-status: Compliance Status
1201
+ set-availability: Set Availability
1202
+ availability-set: Availability saved successfully.
1203
+ availability-time-off: Availability & Time Off
1204
+ no-availability-restrictions: No availability restrictions set.
1205
+ available: Available
1206
+ unavailable: Unavailable
1207
+ unavailable-time-off: Unavailable / Time Off
1208
+ availability-type: Availability Type
1209
+ request-time-off: Request Time Off
1210
+ submit-request: Submit Request
1211
+ time-off-requested: Time off request submitted.
1212
+ delete-availability: Delete Availability
1213
+ delete-availability-confirm: Are you sure you want to remove this availability record?
1214
+ availability-deleted: Availability record removed.
1215
+ start-date: Start Date
1216
+ end-date: End Date
1217
+ select-start-date: Select start date
1218
+ select-end-date: Select end date
1219
+ reason: Reason
1220
+ reason-placeholder: e.g. Personal appointment
1221
+ notes-placeholder: Optional additional notes
1175
1222
  modals:
1176
1223
  new-custom-field-group:
1177
1224
  modal-title: Шинэ захиалгат талбарын бүлэг үүсгэх
1178
1225
  group-name: Бүлгийн нэр
1179
1226
  assign-driver:
1180
- select-driver: Жолооч сонгох
1181
1227
  select-assign: Хуваарилах жолоочийг сонгох
1182
1228
  clone-config-form:
1183
1229
  name: Тохиргооны нэр
@@ -1238,7 +1284,6 @@ modals:
1238
1284
  fuel-report-details:
1239
1285
  fuel: Түлш/ Хэмжээ
1240
1286
  fuel-report-form:
1241
- select-driver: Жолооч сонгох
1242
1287
  select-vehicle: Тээврийн хэрэгсэл сонгох
1243
1288
  volume: Хэмжээ
1244
1289
  volume-text: Түлшний хэмжих нэгж болон хэмжээг сонгоно уу.
@@ -1265,7 +1310,6 @@ modals:
1265
1310
  select-reporter: Тайлагнагчаа сонгох
1266
1311
  assigned: Томилсон
1267
1312
  select-assignee: Томилогдогчийг сонгох
1268
- select-driver: Жолоочийг сонгох
1269
1313
  select-vehicle: Тээврийн хэрэгслийг сонгох
1270
1314
  select-type: Төрөл сонгох
1271
1315
  select-category: Ангилал сонгох
@@ -1299,7 +1343,6 @@ modals:
1299
1343
  tags: Тохиргооны шошгууд
1300
1344
  add-tags: Шошгууд нэмэх
1301
1345
  order-assign-driver:
1302
- select-driver: Жолооч сонгох
1303
1346
  select-assign: Хуваарилах жолоочийг сонгоно уу
1304
1347
  order-config-new-status:
1305
1348
  new-status: Шинэ төлөв
@@ -1321,7 +1364,6 @@ modals:
1321
1364
  select-facilitator: Туслагч сонгох
1322
1365
  assign-driver: Жолооч томилох
1323
1366
  assign-driver-text: Энэ захиалгыг илгээх жолоочийг томилно уу.
1324
- select-driver: Жолооч сонгох
1325
1367
  assign-vehicle: Тээврийн хэрэгсэл томилох
1326
1368
  assign-vehicle-text: Энэ захиалгыг гүйцэтгэх тээврийн хэрэгслийг томилно уу.
1327
1369
  select-vehicle: Тээврийн хэрэгсэл сонгох
@@ -1454,7 +1496,6 @@ modals:
1454
1496
  make: Тээврийн хэрэгслийн үйлдвэрлэгч
1455
1497
  model: Тээврийн хэрэгслийн загвар
1456
1498
  year: Тээврийн хэрэгслийн он
1457
- select-driver: Жолооч сонгох
1458
1499
  body: Тээврийн хэрэгслийн биеийн төрөл
1459
1500
  doors: Хаалганы тоо
1460
1501
  type: Тээврийн хэрэгслийн жолоодлогын төрөл
@@ -28,6 +28,8 @@ common:
28
28
  select-resource-filter-by: Selecione {resource} para filtrar por
29
29
  table-view: Visualização em Tabela
30
30
  grid-view: Visualização em Grade
31
+ calendar-view: Visualização em Calendário
32
+ change-layout: Alterar Layout
31
33
  livemap: Mapa ao Vivo
32
34
  tracking: Rastreamento
33
35
  activity: Atividade
@@ -37,6 +39,13 @@ common:
37
39
  edit-address: Editar Endereço
38
40
  new-address: Novo Endereço
39
41
  select-address: Selecionar Endereço
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: Operações
42
51
  dashboard: Painel
@@ -434,7 +443,6 @@ device:
434
443
  warranty: Garantia
435
444
  warranty-placeholder: Selecione a Garantia
436
445
  notes: Notas
437
- notes-placeholder: Notas
438
446
  entity:
439
447
  fields:
440
448
  declare: Declarar
@@ -566,7 +574,6 @@ order:
566
574
  invalid-coordinates: Coordenadas inválidas!
567
575
  items-drop: Itens entregues em
568
576
  loading-message: Carregando cotações de serviço...
569
- notes-placeholder: Digite as notas do pedido aqui....
570
577
  notes-title: Notas
571
578
  optimize-route: Otimizar Rota
572
579
  optimize-route-help-text: A Fleetbase otimizará automaticamente a rota.
@@ -693,7 +700,6 @@ order:
693
700
  vehicle-assigned: Veículo
694
701
  no-driver: Sem Motorista
695
702
  no-vehicle: Sem Veículo
696
- select-driver: Selecionar Motorista
697
703
  select-vehicle: Selecionar Veículo
698
704
  kanban:
699
705
  status-updated: Atividade do pedido atualizada para o status {status}.
@@ -940,7 +946,6 @@ vehicle:
940
946
  make: Marca
941
947
  model: Modelo
942
948
  plate-number: Número da Placa
943
- select-driver: Selecionar Motorista
944
949
  upload-new-photo: Enviar Nova Foto
945
950
  vehicle-make: Marca do Veículo
946
951
  vehicle-model: Modelo do Veículo
@@ -1186,12 +1191,53 @@ scheduler:
1186
1191
  scheduled-orders: Pedidos agendados
1187
1192
  unauthorized-to-schedule: Você não está autorizado a agendar pedidos.
1188
1193
  scheduling-for: Agendando para {orderId}
1194
+ add-shift: Add Shift
1195
+ create-shift: Create Shift
1196
+ edit-shift: Edit Shift
1197
+ delete-shift: Delete Shift
1198
+ delete-shift-confirm: Are you sure you want to delete this shift? This action cannot be undone.
1199
+ shift-created: Shift created successfully.
1200
+ shift-updated: Shift updated successfully.
1201
+ shift-title: Shift Title
1202
+ shift-title-placeholder: e.g. Morning Delivery Run
1203
+ shift-start: Shift Start
1204
+ shift-end: Shift End
1205
+ shift-notes-placeholder: Optional notes about this shift
1206
+ select-start-datetime: Select start date & time
1207
+ select-end-datetime: Select end date & time
1208
+ select-driver: Select Driver
1209
+ upcoming-shifts: Upcoming Shifts
1210
+ no-upcoming-shifts: No upcoming shifts scheduled.
1211
+ hours-of-service: Hours of Service
1212
+ daily-driving-hours: Daily Driving Hours
1213
+ weekly-hours: Weekly Hours
1214
+ compliance-status: Compliance Status
1215
+ set-availability: Set Availability
1216
+ availability-set: Availability saved successfully.
1217
+ availability-time-off: Availability & Time Off
1218
+ no-availability-restrictions: No availability restrictions set.
1219
+ available: Available
1220
+ unavailable: Unavailable
1221
+ unavailable-time-off: Unavailable / Time Off
1222
+ availability-type: Availability Type
1223
+ request-time-off: Request Time Off
1224
+ submit-request: Submit Request
1225
+ time-off-requested: Time off request submitted.
1226
+ delete-availability: Delete Availability
1227
+ delete-availability-confirm: Are you sure you want to remove this availability record?
1228
+ availability-deleted: Availability record removed.
1229
+ start-date: Start Date
1230
+ end-date: End Date
1231
+ select-start-date: Select start date
1232
+ select-end-date: Select end date
1233
+ reason: Reason
1234
+ reason-placeholder: e.g. Personal appointment
1235
+ notes-placeholder: Optional additional notes
1189
1236
  modals:
1190
1237
  new-custom-field-group:
1191
1238
  modal-title: Criar um novo grupo de campos personalizados
1192
1239
  group-name: Nome do grupo
1193
1240
  assign-driver:
1194
- select-driver: Selecionar motorista
1195
1241
  select-assign: Selecionar motorista para atribuir
1196
1242
  clone-config-form:
1197
1243
  name: Nome da configuração
@@ -1253,7 +1299,6 @@ modals:
1253
1299
  fuel-report-details:
1254
1300
  fuel: Combustível/ Volume
1255
1301
  fuel-report-form:
1256
- select-driver: Selecionar Motorista
1257
1302
  select-vehicle: Selecionar Veículo
1258
1303
  volume: Volume
1259
1304
  volume-text: Selecione a unidade métrica e o volume de combustível para reportar.
@@ -1280,7 +1325,6 @@ modals:
1280
1325
  select-reporter: Selecionar Reportador
1281
1326
  assigned: Atribuído a
1282
1327
  select-assignee: Selecionar Responsável
1283
- select-driver: Selecionar Motorista
1284
1328
  select-vehicle: Selecionar Veículo
1285
1329
  select-type: Selecionar Tipo
1286
1330
  select-category: Selecionar Categoria
@@ -1314,7 +1358,6 @@ modals:
1314
1358
  tags: Tags da Configuração
1315
1359
  add-tags: Adicionar tags
1316
1360
  order-assign-driver:
1317
- select-driver: Selecionar Motorista
1318
1361
  select-assign: Selecione o Motorista para Atribuir
1319
1362
  order-config-new-status:
1320
1363
  new-status: Novo Status
@@ -1339,7 +1382,6 @@ modals:
1339
1382
  select-facilitator: Selecionar Facilitador
1340
1383
  assign-driver: Atribuir Motorista
1341
1384
  assign-driver-text: Atribua o motorista para quem este pedido será despachado.
1342
- select-driver: Selecionar Motorista
1343
1385
  assign-vehicle: Atribuir Veículo
1344
1386
  assign-vehicle-text: Atribua o veículo com o qual este pedido será realizado.
1345
1387
  select-vehicle: Selecionar Veículo
@@ -1472,7 +1514,6 @@ modals:
1472
1514
  make: Marca do Veículo
1473
1515
  model: Modelo do Veículo
1474
1516
  year: Ano do Veículo
1475
- select-driver: Selecionar Motorista
1476
1517
  body: Tipo de Carroceria do Veículo
1477
1518
  doors: Número de Portas
1478
1519
  type: Tipo de Tração do Veículo
@@ -28,6 +28,8 @@ common:
28
28
  select-resource-filter-by: Выберите {resource} для фильтрации
29
29
  table-view: Табличный вид
30
30
  grid-view: Сеточный вид
31
+ calendar-view: Вид Календаря
32
+ change-layout: Изменить макет
31
33
  livemap: Живая карта
32
34
  tracking: Отслеживание
33
35
  activity: Активность
@@ -37,6 +39,13 @@ common:
37
39
  edit-address: Редактировать адрес
38
40
  new-address: Новый адрес
39
41
  select-address: Выбрать адрес
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: Операции
42
51
  dashboard: Панель управления
@@ -432,7 +441,6 @@ device:
432
441
  warranty: Гарантия
433
442
  warranty-placeholder: Выберите гарантию
434
443
  notes: Примечания
435
- notes-placeholder: Примечания
436
444
  entity:
437
445
  fields:
438
446
  declare: Заявить
@@ -562,7 +570,6 @@ order:
562
570
  invalid-coordinates: Недопустимые координаты!
563
571
  items-drop: Товары доставляются в
564
572
  loading-message: Загрузка тарифов сервиса...
565
- notes-placeholder: Введите заметки к заказу здесь....
566
573
  notes-title: Заметки
567
574
  optimize-route: Оптимизировать маршрут
568
575
  optimize-route-help-text: Fleetbase автоматически оптимизирует маршрут.
@@ -689,7 +696,6 @@ order:
689
696
  vehicle-assigned: Транспортное средство
690
697
  no-driver: Водитель не назначен
691
698
  no-vehicle: Транспортное средство не назначено
692
- select-driver: Выбрать водителя
693
699
  select-vehicle: Выбрать транспортное средство
694
700
  kanban:
695
701
  status-updated: Активность заказа обновлена до статуса {status}.
@@ -935,7 +941,6 @@ vehicle:
935
941
  make: Марка
936
942
  model: Модель
937
943
  plate-number: Номерной знак
938
- select-driver: Выберите водителя
939
944
  upload-new-photo: Загрузить новое фото
940
945
  vehicle-make: Марка транспортного средства
941
946
  vehicle-model: Модель транспортного средства
@@ -1179,12 +1184,53 @@ scheduler:
1179
1184
  scheduled-orders: Запланированные заказы
1180
1185
  unauthorized-to-schedule: У вас нет прав для планирования заказов.
1181
1186
  scheduling-for: Планирование для {orderId}
1187
+ add-shift: Add Shift
1188
+ create-shift: Create Shift
1189
+ edit-shift: Edit Shift
1190
+ delete-shift: Delete Shift
1191
+ delete-shift-confirm: Are you sure you want to delete this shift? This action cannot be undone.
1192
+ shift-created: Shift created successfully.
1193
+ shift-updated: Shift updated successfully.
1194
+ shift-title: Shift Title
1195
+ shift-title-placeholder: e.g. Morning Delivery Run
1196
+ shift-start: Shift Start
1197
+ shift-end: Shift End
1198
+ shift-notes-placeholder: Optional notes about this shift
1199
+ select-start-datetime: Select start date & time
1200
+ select-end-datetime: Select end date & time
1201
+ select-driver: Select Driver
1202
+ upcoming-shifts: Upcoming Shifts
1203
+ no-upcoming-shifts: No upcoming shifts scheduled.
1204
+ hours-of-service: Hours of Service
1205
+ daily-driving-hours: Daily Driving Hours
1206
+ weekly-hours: Weekly Hours
1207
+ compliance-status: Compliance Status
1208
+ set-availability: Set Availability
1209
+ availability-set: Availability saved successfully.
1210
+ availability-time-off: Availability & Time Off
1211
+ no-availability-restrictions: No availability restrictions set.
1212
+ available: Available
1213
+ unavailable: Unavailable
1214
+ unavailable-time-off: Unavailable / Time Off
1215
+ availability-type: Availability Type
1216
+ request-time-off: Request Time Off
1217
+ submit-request: Submit Request
1218
+ time-off-requested: Time off request submitted.
1219
+ delete-availability: Delete Availability
1220
+ delete-availability-confirm: Are you sure you want to remove this availability record?
1221
+ availability-deleted: Availability record removed.
1222
+ start-date: Start Date
1223
+ end-date: End Date
1224
+ select-start-date: Select start date
1225
+ select-end-date: Select end date
1226
+ reason: Reason
1227
+ reason-placeholder: e.g. Personal appointment
1228
+ notes-placeholder: Optional additional notes
1182
1229
  modals:
1183
1230
  new-custom-field-group:
1184
1231
  modal-title: Создать новую группу пользовательских полей
1185
1232
  group-name: Название группы
1186
1233
  assign-driver:
1187
- select-driver: Выбрать водителя
1188
1234
  select-assign: Выберите водителя для назначения
1189
1235
  clone-config-form:
1190
1236
  name: Название конфигурации
@@ -1245,7 +1291,6 @@ modals:
1245
1291
  fuel-report-details:
1246
1292
  fuel: Топливо / Объем
1247
1293
  fuel-report-form:
1248
- select-driver: Выберите водителя
1249
1294
  select-vehicle: Выберите транспортное средство
1250
1295
  volume: Объем
1251
1296
  volume-text: Выберите метрическую единицу и объем топлива для отчета.
@@ -1272,7 +1317,6 @@ modals:
1272
1317
  select-reporter: Выберите сообщившего
1273
1318
  assigned: Назначено
1274
1319
  select-assignee: Выберите исполнителя
1275
- select-driver: Выберите водителя
1276
1320
  select-vehicle: Выберите транспортное средство
1277
1321
  select-type: Выберите тип
1278
1322
  select-category: Выберите категорию
@@ -1307,7 +1351,6 @@ modals:
1307
1351
  tags: Теги конфигурации
1308
1352
  add-tags: Добавить теги
1309
1353
  order-assign-driver:
1310
- select-driver: Выберите водителя
1311
1354
  select-assign: Выберите водителя для назначения
1312
1355
  order-config-new-status:
1313
1356
  new-status: Новый статус
@@ -1332,7 +1375,6 @@ modals:
1332
1375
  select-facilitator: Выберите фасилитатора
1333
1376
  assign-driver: Назначить водителя
1334
1377
  assign-driver-text: Назначьте водителя, которому будет отправлен этот заказ.
1335
- select-driver: Выберите водителя
1336
1378
  assign-vehicle: Назначить транспортное средство
1337
1379
  assign-vehicle-text: Назначьте транспортное средство, с помощью которого будет
1338
1380
  выполнен этот заказ.
@@ -1466,7 +1508,6 @@ modals:
1466
1508
  make: Марка транспортного средства
1467
1509
  model: Модель транспортного средства
1468
1510
  year: Год выпуска транспортного средства
1469
- select-driver: Выбрать водителя
1470
1511
  body: Тип кузова транспортного средства
1471
1512
  doors: Количество дверей
1472
1513
  type: Тип привода транспортного средства
@@ -36,6 +36,10 @@ fleet-ops:
36
36
  item: Mục
37
37
  key: Khóa
38
38
  label: Nhãn
39
+ table-view: Xem Bảng
40
+ grid-view: Xem Lưới
41
+ calendar-view: Xem Lịch
42
+ change-layout: Thay đổi bố cục
39
43
  length: Chiều dài
40
44
  license: Giấy phép
41
45
  loading: Đang tải...
@@ -370,7 +374,6 @@ fleet-ops:
370
374
  modal-title: Tạo nhóm trường tùy chỉnh mới
371
375
  group-name: Tên nhóm
372
376
  assign-driver:
373
- select-driver: Chọn Tài xế
374
377
  select-assign: Chọn tài xế để gán
375
378
  clone-config-form:
376
379
  name: Tên Cấu hình
@@ -430,7 +433,6 @@ fleet-ops:
430
433
  fuel-report-details:
431
434
  fuel: Nhiên liệu/ Khối lượng
432
435
  fuel-report-form:
433
- select-driver: Chọn Tài xế
434
436
  select-vehicle: Chọn Phương tiện
435
437
  volume: Khối lượng
436
438
  volume-text: Chọn đơn vị đo lường và khối lượng của nhiên liệu để báo cáo.
@@ -456,7 +458,6 @@ fleet-ops:
456
458
  select-reporter: Chọn Người báo cáo
457
459
  assigned: Được giao cho
458
460
  select-assignee: Chọn Người nhận giao
459
- select-driver: Chọn Tài xế
460
461
  select-vehicle: Chọn Phương tiện
461
462
  select-type: Chọn Loại
462
463
  select-category: Chọn Danh mục
@@ -489,7 +490,6 @@ fleet-ops:
489
490
  tags: Thẻ Cấu hình
490
491
  add-tags: Thêm thẻ
491
492
  order-assign-driver:
492
- select-driver: Chọn Tài xế
493
493
  select-assign: Chọn tài xế để gán
494
494
  order-config-new-status:
495
495
  new-status: Trạng thái Mới
@@ -508,7 +508,6 @@ fleet-ops:
508
508
  select-facilitator: Chọn Người điều phối
509
509
  assign-driver: Gán Tài xế
510
510
  assign-driver-text: Gán tài xế mà đơn hàng này sẽ được gửi đến.
511
- select-driver: Chọn Tài xế
512
511
  assign-vehicle: Gán Phương tiện
513
512
  assign-vehicle-text: Gán phương tiện mà đơn hàng này sẽ được thực hiện bằng.
514
513
  select-vehicle: Chọn Phương tiện
@@ -631,7 +630,6 @@ fleet-ops:
631
630
  make: Hãng xe
632
631
  model: Mẫu xe
633
632
  year: Năm xe
634
- select-driver: Chọn Tài xế
635
633
  body: Loại thân xe
636
634
  doors: Số cửa
637
635
  type: Loại hệ dẫn động xe
@@ -719,7 +717,6 @@ fleet-ops:
719
717
  vehicle-assigned: Phương tiện
720
718
  no-driver: Không có tài xế
721
719
  no-vehicle: Không có phương tiện
722
- select-driver: Chọn Tài xế
723
720
  select-vehicle: Chọn Phương tiện
724
721
  widget:
725
722
  fleet-ops-quickstart:
@@ -836,7 +833,6 @@ fleet-ops:
836
833
  cancel-edit-fuel-report: Hủy chỉnh sửa báo cáo nhiên liệu
837
834
  cancel-new-fuel-report: Hủy báo cáo nhiên liệu mới
838
835
  select-reporter: Chọn Người báo cáo
839
- select-driver: Chọn Tài xế
840
836
  select-vehicle: Chọn Phương tiện
841
837
  select-fuel-report: Chọn trạng thái báo cáo nhiên liệu
842
838
  odometer: Công tơ mét
@@ -872,7 +868,6 @@ fleet-ops:
872
868
  assigned: Được Gán Cho
873
869
  select-assign: Chọn Người được Gán
874
870
  select-reporter: Chọn Người báo cáo
875
- select-driver: Chọn Tài xế
876
871
  select-vehicle: Chọn Phương tiện
877
872
  type: Loại Vấn đề
878
873
  select-type: Chọn loại vấn đề
@@ -1069,7 +1064,6 @@ fleet-ops:
1069
1064
  vehicle-year: Năm xe
1070
1065
  driver-assigned: Tài xế Được Gán
1071
1066
  vehicle-assigned: Xe Được Gán
1072
- select-driver: Chọn Tài xế
1073
1067
  select-vehicle: Chọn Xe
1074
1068
  avatar: Avatar
1075
1069
  select-map-avatar: Chọn avatar trên bản đồ
@@ -1351,7 +1345,6 @@ fleet-ops:
1351
1345
  no-service-info-text: Không có bảng giá dịch vụ.
1352
1346
  input-order-info-text: Nhập tuyến đường đơn hàng để xem bảng giá dịch vụ.
1353
1347
  notes-title: Ghi chú
1354
- notes-placeholder: Nhập ghi chú đơn hàng ở đây....
1355
1348
  success-message: Đơn hàng mới {orderId} đã được tạo
1356
1349
  warning-message: Không có tệp nào trong hàng đợi để tải lên!
1357
1350
  import-success: Nhập khẩu hoàn tất.
@@ -1431,7 +1424,6 @@ fleet-ops:
1431
1424
  order-title: Nhãn Đơn Hàng
1432
1425
  waypoint-title: Nhãn Điểm Đến
1433
1426
  proof-of-delivery: Bằng chứng Giao Hàng
1434
- notes-placeholder: Nhập ghi chú đơn hàng ở đây....
1435
1427
  save-order-note: Lưu Ghi Chú Đơn Hàng
1436
1428
  order-notes-updated: Ghi chú đơn hàng đã được cập nhật.
1437
1429
  config:
@@ -1567,3 +1559,47 @@ fleet-ops:
1567
1559
  settings:
1568
1560
  navigator-app:
1569
1561
  navigator-app-settings: Cài đặt ứng dụng điều hướng
1562
+
1563
+ scheduler:
1564
+ add-shift: Add Shift
1565
+ create-shift: Create Shift
1566
+ edit-shift: Edit Shift
1567
+ delete-shift: Delete Shift
1568
+ delete-shift-confirm: Are you sure you want to delete this shift? This action cannot be undone.
1569
+ shift-created: Shift created successfully.
1570
+ shift-updated: Shift updated successfully.
1571
+ shift-title: Shift Title
1572
+ shift-title-placeholder: e.g. Morning Delivery Run
1573
+ shift-start: Shift Start
1574
+ shift-end: Shift End
1575
+ shift-notes-placeholder: Optional notes about this shift
1576
+ select-start-datetime: Select start date & time
1577
+ select-end-datetime: Select end date & time
1578
+ select-driver: Select Driver
1579
+ upcoming-shifts: Upcoming Shifts
1580
+ no-upcoming-shifts: No upcoming shifts scheduled.
1581
+ hours-of-service: Hours of Service
1582
+ daily-driving-hours: Daily Driving Hours
1583
+ weekly-hours: Weekly Hours
1584
+ compliance-status: Compliance Status
1585
+ set-availability: Set Availability
1586
+ availability-set: Availability saved successfully.
1587
+ availability-time-off: Availability & Time Off
1588
+ no-availability-restrictions: No availability restrictions set.
1589
+ available: Available
1590
+ unavailable: Unavailable
1591
+ unavailable-time-off: Unavailable / Time Off
1592
+ availability-type: Availability Type
1593
+ request-time-off: Request Time Off
1594
+ submit-request: Submit Request
1595
+ time-off-requested: Time off request submitted.
1596
+ delete-availability: Delete Availability
1597
+ delete-availability-confirm: Are you sure you want to remove this availability record?
1598
+ availability-deleted: Availability record removed.
1599
+ start-date: Start Date
1600
+ end-date: End Date
1601
+ select-start-date: Select start date
1602
+ select-end-date: Select end date
1603
+ reason: Reason
1604
+ reason-placeholder: e.g. Personal appointment
1605
+ notes-placeholder: Optional additional notes