@fleetbase/fleetops-engine 0.2.6 → 0.2.8
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/.gitattributes +14 -0
- package/.php-cs-fixer.php +29 -0
- package/LICENSE.md +16 -4
- package/README.md +103 -13
- package/composer.json +85 -0
- package/extension.json +10 -0
- package/package.json +3 -3
- package/phpstan.neon.dist +8 -0
- package/phpunit.xml.dist +16 -0
- package/server/config/api.php +765 -0
- package/server/config/cache.stores.php +18 -0
- package/server/config/dompdf.php +242 -0
- package/server/config/fleetops.php +19 -0
- package/server/config/geocoder.php +108 -0
- package/server/data/globe.json +261 -0
- package/server/migrations/2023_04_27_053456_create_contacts_table.php +49 -0
- package/server/migrations/2023_04_27_053456_create_drivers_table.php +62 -0
- package/server/migrations/2023_04_27_053456_create_entities_table.php +67 -0
- package/server/migrations/2023_04_27_053456_create_fleet_drivers_table.php +39 -0
- package/server/migrations/2023_04_27_053456_create_fleets_table.php +47 -0
- package/server/migrations/2023_04_27_053456_create_fuel_reports_table.php +50 -0
- package/server/migrations/2023_04_27_053456_create_integrated_vendors_table.php +44 -0
- package/server/migrations/2023_04_27_053456_create_issues_table.php +53 -0
- package/server/migrations/2023_04_27_053456_create_orders_table.php +70 -0
- package/server/migrations/2023_04_27_053456_create_payloads_table.php +51 -0
- package/server/migrations/2023_04_27_053456_create_places_table.php +62 -0
- package/server/migrations/2023_04_27_053456_create_positions_table.php +46 -0
- package/server/migrations/2023_04_27_053456_create_proofs_table.php +44 -0
- package/server/migrations/2023_04_27_053456_create_purchase_rates_table.php +46 -0
- package/server/migrations/2023_04_27_053456_create_routes_table.php +40 -0
- package/server/migrations/2023_04_27_053456_create_service_areas_table.php +47 -0
- package/server/migrations/2023_04_27_053456_create_service_quote_items_table.php +42 -0
- package/server/migrations/2023_04_27_053456_create_service_quotes_table.php +47 -0
- package/server/migrations/2023_04_27_053456_create_service_rate_fees_table.php +45 -0
- package/server/migrations/2023_04_27_053456_create_service_rate_parcel_fees_table.php +47 -0
- package/server/migrations/2023_04_27_053456_create_service_rates_table.php +61 -0
- package/server/migrations/2023_04_27_053456_create_tracking_numbers_table.php +46 -0
- package/server/migrations/2023_04_27_053456_create_tracking_statuses_table.php +54 -0
- package/server/migrations/2023_04_27_053456_create_vehicles_table.php +84 -0
- package/server/migrations/2023_04_27_053456_create_vendors_table.php +56 -0
- package/server/migrations/2023_04_27_053456_create_waypoints_table.php +45 -0
- package/server/migrations/2023_04_27_053456_create_zones_table.php +46 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_companies_table.php +32 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_contacts_table.php +34 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_drivers_table.php +40 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_entities_table.php +40 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_fleet_drivers_table.php +34 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_fleets_table.php +36 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_fuel_reports_table.php +36 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_integrated_vendors_table.php +34 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_issues_table.php +38 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_orders_table.php +48 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_payloads_table.php +40 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_places_table.php +32 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_positions_table.php +36 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_proofs_table.php +34 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_purchase_rates_table.php +38 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_routes_table.php +34 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_service_areas_table.php +34 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_service_quote_items_table.php +32 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_service_quotes_table.php +38 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_service_rate_fees_table.php +32 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_service_rate_parcel_fees_table.php +32 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_service_rates_table.php +36 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_tracking_numbers_table.php +34 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_tracking_statuses_table.php +34 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_vehicles_table.php +36 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_vendors_table.php +40 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_waypoints_table.php +38 -0
- package/server/migrations/2023_04_27_053459_add_foreign_keys_to_zones_table.php +34 -0
- package/server/migrations/2023_09_14_074512_update_vehicles_table.php +100 -0
- package/server/migrations/2023_09_14_074619_create_vehicle_devices_table.php +44 -0
- package/server/migrations/2023_09_26_071205_add_online_column_to_vehicles_table.php +32 -0
- package/server/migrations/2023_09_26_083957_create_fleet_vehicles_table.php +45 -0
- package/server/migrations/2023_09_27_023757_add_column_to_fleets_table.php +46 -0
- package/server/migrations/2023_10_05_074811_update_vehicle.php +42 -0
- package/server/resources/views/labels/default.php +165 -0
- package/server/src/Auth/Schemas/FleetOps.php +75 -0
- package/server/src/Casts/MultiPolygon.php +50 -0
- package/server/src/Casts/Point.php +109 -0
- package/server/src/Casts/Polygon.php +46 -0
- package/server/src/Console/Commands/DispatchAdhocOrders.php +137 -0
- package/server/src/Console/Commands/DispatchOrders.php +71 -0
- package/server/src/Console/Commands/TrackOrderDistanceAndTime.php +62 -0
- package/server/src/Events/DriverLocationChanged.php +174 -0
- package/server/src/Events/DriverSimulatedLocationChanged.php +183 -0
- package/server/src/Events/EntityDriverAssigned.php +36 -0
- package/server/src/Events/OrderCanceled.php +15 -0
- package/server/src/Events/OrderCompleted.php +15 -0
- package/server/src/Events/OrderDispatchFailed.php +42 -0
- package/server/src/Events/OrderDispatched.php +15 -0
- package/server/src/Events/OrderDriverAssigned.php +15 -0
- package/server/src/Events/OrderReady.php +15 -0
- package/server/src/Events/OrderStarted.php +15 -0
- package/server/src/Exceptions/IntegratedVendorException.php +18 -0
- package/server/src/Expansions/UserExpansion.php +63 -0
- package/server/src/Exports/ContactExport.php +56 -0
- package/server/src/Exports/DriverExport.php +61 -0
- package/server/src/Exports/FleetExport.php +53 -0
- package/server/src/Exports/PlaceExport.php +55 -0
- package/server/src/Exports/ServiceAreaExport.php +58 -0
- package/server/src/Exports/VehicleExport.php +57 -0
- package/server/src/Exports/VendorExport.php +57 -0
- package/server/src/Http/Controllers/Api/v1/ContactController.php +133 -0
- package/server/src/Http/Controllers/Api/v1/DriverController.php +691 -0
- package/server/src/Http/Controllers/Api/v1/EntityController.php +230 -0
- package/server/src/Http/Controllers/Api/v1/FleetController.php +146 -0
- package/server/src/Http/Controllers/Api/v1/LabelController.php +63 -0
- package/server/src/Http/Controllers/Api/v1/OrderController.php +1114 -0
- package/server/src/Http/Controllers/Api/v1/PayloadController.php +195 -0
- package/server/src/Http/Controllers/Api/v1/PlaceController.php +333 -0
- package/server/src/Http/Controllers/Api/v1/PurchaseRateController.php +199 -0
- package/server/src/Http/Controllers/Api/v1/ServiceAreaController.php +133 -0
- package/server/src/Http/Controllers/Api/v1/ServiceQuoteController.php +381 -0
- package/server/src/Http/Controllers/Api/v1/ServiceRateController.php +223 -0
- package/server/src/Http/Controllers/Api/v1/TrackingNumberController.php +146 -0
- package/server/src/Http/Controllers/Api/v1/TrackingStatusController.php +138 -0
- package/server/src/Http/Controllers/Api/v1/VehicleController.php +191 -0
- package/server/src/Http/Controllers/Api/v1/VendorController.php +159 -0
- package/server/src/Http/Controllers/Api/v1/ZoneController.php +146 -0
- package/server/src/Http/Controllers/FleetOpsController.php +13 -0
- package/server/src/Http/Controllers/Internal/v1/ContactController.php +69 -0
- package/server/src/Http/Controllers/Internal/v1/DriverController.php +261 -0
- package/server/src/Http/Controllers/Internal/v1/EntityController.php +15 -0
- package/server/src/Http/Controllers/Internal/v1/FleetController.php +152 -0
- package/server/src/Http/Controllers/Internal/v1/FleetOpsLookupController.php +80 -0
- package/server/src/Http/Controllers/Internal/v1/FuelReportController.php +15 -0
- package/server/src/Http/Controllers/Internal/v1/GeocoderController.php +96 -0
- package/server/src/Http/Controllers/Internal/v1/IntegratedVendorController.php +63 -0
- package/server/src/Http/Controllers/Internal/v1/IssueController.php +15 -0
- package/server/src/Http/Controllers/Internal/v1/LiveController.php +127 -0
- package/server/src/Http/Controllers/Internal/v1/MetricsController.php +75 -0
- package/server/src/Http/Controllers/Internal/v1/MorphController.php +77 -0
- package/server/src/Http/Controllers/Internal/v1/OrderConfigController.php +269 -0
- package/server/src/Http/Controllers/Internal/v1/OrderController.php +564 -0
- package/server/src/Http/Controllers/Internal/v1/PayloadController.php +15 -0
- package/server/src/Http/Controllers/Internal/v1/PlaceController.php +163 -0
- package/server/src/Http/Controllers/Internal/v1/ProofController.php +139 -0
- package/server/src/Http/Controllers/Internal/v1/PurchaseRateController.php +15 -0
- package/server/src/Http/Controllers/Internal/v1/RouteController.php +15 -0
- package/server/src/Http/Controllers/Internal/v1/ServiceAreaController.php +32 -0
- package/server/src/Http/Controllers/Internal/v1/ServiceQuoteController.php +345 -0
- package/server/src/Http/Controllers/Internal/v1/ServiceRateController.php +47 -0
- package/server/src/Http/Controllers/Internal/v1/SettingController.php +30 -0
- package/server/src/Http/Controllers/Internal/v1/TrackingNumberController.php +15 -0
- package/server/src/Http/Controllers/Internal/v1/TrackingStatusController.php +15 -0
- package/server/src/Http/Controllers/Internal/v1/VehicleController.php +65 -0
- package/server/src/Http/Controllers/Internal/v1/VehicleDeviceController.php +15 -0
- package/server/src/Http/Controllers/Internal/v1/VendorController.php +120 -0
- package/server/src/Http/Controllers/Internal/v1/ZoneController.php +15 -0
- package/server/src/Http/Filter/ContactFilter.php +86 -0
- package/server/src/Http/Filter/DriverFilter.php +148 -0
- package/server/src/Http/Filter/FleetFilter.php +108 -0
- package/server/src/Http/Filter/IntegratedVendorFilter.php +13 -0
- package/server/src/Http/Filter/OrderFilter.php +242 -0
- package/server/src/Http/Filter/PlaceFilter.php +111 -0
- package/server/src/Http/Filter/ServiceAreaFilter.php +13 -0
- package/server/src/Http/Filter/ServiceQuoteFilter.php +13 -0
- package/server/src/Http/Filter/ServiceRateFilter.php +33 -0
- package/server/src/Http/Filter/TrackingStatusFilter.php +43 -0
- package/server/src/Http/Filter/VehicleFilter.php +91 -0
- package/server/src/Http/Filter/VendorFilter.php +83 -0
- package/server/src/Http/Filter/ZoneFilter.php +13 -0
- package/server/src/Http/Requests/CancelOrderRequest.php +31 -0
- package/server/src/Http/Requests/CreateContactRequest.php +33 -0
- package/server/src/Http/Requests/CreateDriverRequest.php +55 -0
- package/server/src/Http/Requests/CreateEntityRequest.php +43 -0
- package/server/src/Http/Requests/CreateFleetRequest.php +32 -0
- package/server/src/Http/Requests/CreateOrderRequest.php +66 -0
- package/server/src/Http/Requests/CreatePayloadRequest.php +37 -0
- package/server/src/Http/Requests/CreatePlaceRequest.php +38 -0
- package/server/src/Http/Requests/CreatePurchaseRateRequest.php +33 -0
- package/server/src/Http/Requests/CreateServiceAreaRequest.php +35 -0
- package/server/src/Http/Requests/CreateServiceQuoteRequest.php +29 -0
- package/server/src/Http/Requests/CreateServiceRateRequest.php +56 -0
- package/server/src/Http/Requests/CreateTrackingNumberRequest.php +34 -0
- package/server/src/Http/Requests/CreateTrackingStatusRequest.php +42 -0
- package/server/src/Http/Requests/CreateVehicleRequest.php +32 -0
- package/server/src/Http/Requests/CreateVendorRequest.php +35 -0
- package/server/src/Http/Requests/CreateZoneRequest.php +35 -0
- package/server/src/Http/Requests/DecodeTrackingNumberQR.php +30 -0
- package/server/src/Http/Requests/DriverSimulationRequest.php +46 -0
- package/server/src/Http/Requests/Internal/AssignOrderRequest.php +31 -0
- package/server/src/Http/Requests/Internal/CreateDriverRequest.php +42 -0
- package/server/src/Http/Requests/Internal/FleetActionRequest.php +32 -0
- package/server/src/Http/Requests/Internal/UpdateDriverRequest.php +7 -0
- package/server/src/Http/Requests/QueryServiceQuotesRequest.php +41 -0
- package/server/src/Http/Requests/UpdateContactRequest.php +20 -0
- package/server/src/Http/Requests/UpdateDriverRequest.php +7 -0
- package/server/src/Http/Requests/UpdateEntityRequest.php +7 -0
- package/server/src/Http/Requests/UpdateFleetRequest.php +7 -0
- package/server/src/Http/Requests/UpdateOrderRequest.php +7 -0
- package/server/src/Http/Requests/UpdatePayloadRequest.php +7 -0
- package/server/src/Http/Requests/UpdatePlaceRequest.php +7 -0
- package/server/src/Http/Requests/UpdatePurchaseRateRequest.php +7 -0
- package/server/src/Http/Requests/UpdateServiceAreaRequest.php +29 -0
- package/server/src/Http/Requests/UpdateServiceQuoteRequest.php +29 -0
- package/server/src/Http/Requests/UpdateServiceRateRequest.php +29 -0
- package/server/src/Http/Requests/UpdateTrackingNumberRequest.php +7 -0
- package/server/src/Http/Requests/UpdateTrackingStatusRequest.php +32 -0
- package/server/src/Http/Requests/UpdateVehicleRequest.php +7 -0
- package/server/src/Http/Requests/UpdateVendorRequest.php +7 -0
- package/server/src/Http/Requests/UpdateZoneRequest.php +7 -0
- package/server/src/Http/Resources/Internal/v1/IntegratedVendorFacilitator.php +37 -0
- package/server/src/Http/Resources/Internal/v1/Vehicle.php +33 -0
- package/server/src/Http/Resources/Internal/v1/Waypoint.php +34 -0
- package/server/src/Http/Resources/v1/Contact.php +62 -0
- package/server/src/Http/Resources/v1/CurrentJob.php +36 -0
- package/server/src/Http/Resources/v1/DeletedResource.php +61 -0
- package/server/src/Http/Resources/v1/Driver.php +89 -0
- package/server/src/Http/Resources/v1/Entity.php +107 -0
- package/server/src/Http/Resources/v1/Fleet.php +60 -0
- package/server/src/Http/Resources/v1/FuelReport.php +67 -0
- package/server/src/Http/Resources/v1/Order.php +131 -0
- package/server/src/Http/Resources/v1/Payload.php +94 -0
- package/server/src/Http/Resources/v1/Place.php +84 -0
- package/server/src/Http/Resources/v1/Proof.php +36 -0
- package/server/src/Http/Resources/v1/PurchaseRate.php +77 -0
- package/server/src/Http/Resources/v1/ServiceArea.php +55 -0
- package/server/src/Http/Resources/v1/ServiceQuote.php +57 -0
- package/server/src/Http/Resources/v1/ServiceRate.php +94 -0
- package/server/src/Http/Resources/v1/ServiceRateFee.php +58 -0
- package/server/src/Http/Resources/v1/ServiceRateParcelFee.php +48 -0
- package/server/src/Http/Resources/v1/TrackingNumber.php +62 -0
- package/server/src/Http/Resources/v1/TrackingStatus.php +84 -0
- package/server/src/Http/Resources/v1/Vehicle.php +75 -0
- package/server/src/Http/Resources/v1/VehicleDevice.php +44 -0
- package/server/src/Http/Resources/v1/VehicleWithoutDriver.php +72 -0
- package/server/src/Http/Resources/v1/Vendor.php +72 -0
- package/server/src/Http/Resources/v1/Zone.php +60 -0
- package/server/src/Imports/OrdersImport.php +18 -0
- package/server/src/Integrations/Lalamove/Lalamove.php +678 -0
- package/server/src/Integrations/Lalamove/LalamoveDeliveryStop.php +97 -0
- package/server/src/Integrations/Lalamove/LalamoveMarket.php +123 -0
- package/server/src/Integrations/Lalamove/LalamoveServiceType.php +161 -0
- package/server/src/Jobs/SimulateDrivingRoute.php +81 -0
- package/server/src/Jobs/SimulateWaypointReached.php +79 -0
- package/server/src/Listeners/HandleOrderCanceled.php +46 -0
- package/server/src/Listeners/HandleOrderCreated.php +23 -0
- package/server/src/Listeners/HandleOrderDispatchFailed.php +35 -0
- package/server/src/Listeners/HandleOrderDispatched.php +108 -0
- package/server/src/Listeners/HandleOrderDriverAssigned.php +42 -0
- package/server/src/Listeners/HandleOrderReady.php +27 -0
- package/server/src/Listeners/HandleUserRemovedFromCompany.php +31 -0
- package/server/src/Models/Contact.php +239 -0
- package/server/src/Models/Driver.php +543 -0
- package/server/src/Models/Entity.php +416 -0
- package/server/src/Models/Fleet.php +203 -0
- package/server/src/Models/FleetDriver.php +73 -0
- package/server/src/Models/FleetVehicle.php +73 -0
- package/server/src/Models/FuelReport.php +125 -0
- package/server/src/Models/IntegratedVendor.php +219 -0
- package/server/src/Models/Issue.php +111 -0
- package/server/src/Models/Order.php +1132 -0
- package/server/src/Models/Payload.php +699 -0
- package/server/src/Models/Place.php +656 -0
- package/server/src/Models/Position.php +119 -0
- package/server/src/Models/Proof.php +94 -0
- package/server/src/Models/PurchaseRate.php +208 -0
- package/server/src/Models/Route.php +128 -0
- package/server/src/Models/ServiceArea.php +161 -0
- package/server/src/Models/ServiceQuote.php +207 -0
- package/server/src/Models/ServiceQuoteItem.php +46 -0
- package/server/src/Models/ServiceRate.php +953 -0
- package/server/src/Models/ServiceRateFee.php +96 -0
- package/server/src/Models/ServiceRateParcelFee.php +116 -0
- package/server/src/Models/TrackingNumber.php +310 -0
- package/server/src/Models/TrackingStatus.php +177 -0
- package/server/src/Models/Vehicle.php +452 -0
- package/server/src/Models/VehicleDevice.php +79 -0
- package/server/src/Models/Vendor.php +244 -0
- package/server/src/Models/Waypoint.php +226 -0
- package/server/src/Models/Zone.php +95 -0
- package/server/src/Notifications/OrderAssigned.php +140 -0
- package/server/src/Notifications/OrderCanceled.php +129 -0
- package/server/src/Notifications/OrderDispatchFailed.php +81 -0
- package/server/src/Notifications/OrderDispatched.php +173 -0
- package/server/src/Notifications/OrderPing.php +162 -0
- package/server/src/Notifications/OrderSplit.php +56 -0
- package/server/src/Observers/DriverObserver.php +34 -0
- package/server/src/Observers/OrderObserver.php +34 -0
- package/server/src/Observers/PayloadObserver.php +30 -0
- package/server/src/Observers/PlaceObserver.php +26 -0
- package/server/src/Observers/PurchaseRateObserver.php +61 -0
- package/server/src/Observers/ServiceAreaObserver.php +35 -0
- package/server/src/Observers/ServiceRateObserver.php +78 -0
- package/server/src/Observers/TrackingNumberObserver.php +44 -0
- package/server/src/Observers/UserObserver.php +20 -0
- package/server/src/Observers/VehicleObserver.php +66 -0
- package/server/src/Providers/EventServiceProvider.php +30 -0
- package/server/src/Providers/FleetOpsServiceProvider.php +94 -0
- package/server/src/Rules/ResolvablePoint.php +37 -0
- package/server/src/Scopes/DriverScope.php +21 -0
- package/server/src/Support/Algo.php +55 -0
- package/server/src/Support/DistanceMatrix.php +27 -0
- package/server/src/Support/Encoding/Polyline.php +168 -0
- package/server/src/Support/Flow.php +622 -0
- package/server/src/Support/Geocoding.php +216 -0
- package/server/src/Support/IntegratedVendors.php +287 -0
- package/server/src/Support/Metrics.php +305 -0
- package/server/src/Support/OSRM.php +191 -0
- package/server/src/Support/ParsePhone.php +21 -0
- package/server/src/Support/Utils.php +1145 -0
- package/server/src/Traits/HasTrackingNumber.php +185 -0
- package/server/src/routes.php +381 -0
- package/server/tests/Feature.php +5 -0
package/.gitattributes
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/art export-ignore
|
|
2
|
+
/docs export-ignore
|
|
3
|
+
/tests export-ignore
|
|
4
|
+
/scripts export-ignore
|
|
5
|
+
/.github export-ignore
|
|
6
|
+
/.php_cs export-ignore
|
|
7
|
+
.editorconfig export-ignore
|
|
8
|
+
.gitattributes export-ignore
|
|
9
|
+
.gitignore export-ignore
|
|
10
|
+
phpstan.neon.dist export-ignore
|
|
11
|
+
phpunit.xml.dist export-ignore
|
|
12
|
+
CHANGELOG.md export-ignore
|
|
13
|
+
CONTRIBUTING.md export-ignore
|
|
14
|
+
README.md export-ignore
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
<?php
|
|
2
|
+
|
|
3
|
+
$finder = PhpCsFixer\Finder::create()
|
|
4
|
+
->in(__DIR__ . DIRECTORY_SEPARATOR . 'server' . DIRECTORY_SEPARATOR . 'tests')
|
|
5
|
+
->in(__DIR__ . DIRECTORY_SEPARATOR . 'server' . DIRECTORY_SEPARATOR . 'src')
|
|
6
|
+
->append(['.php-cs-fixer.php']);
|
|
7
|
+
|
|
8
|
+
$rules = [
|
|
9
|
+
'@Symfony' => true,
|
|
10
|
+
'phpdoc_no_empty_return' => false,
|
|
11
|
+
'array_syntax' => ['syntax' => 'short'],
|
|
12
|
+
'yoda_style' => false,
|
|
13
|
+
'binary_operator_spaces' => [
|
|
14
|
+
'operators' => [
|
|
15
|
+
'=>' => 'align',
|
|
16
|
+
'=' => 'align',
|
|
17
|
+
],
|
|
18
|
+
],
|
|
19
|
+
'concat_space' => ['spacing' => 'one'],
|
|
20
|
+
'not_operator_with_space' => false,
|
|
21
|
+
'increment_style' => ['style' => 'post'],
|
|
22
|
+
'indentation_type' => true,
|
|
23
|
+
'single_quote' => true,
|
|
24
|
+
];
|
|
25
|
+
|
|
26
|
+
return (new PhpCsFixer\Config())
|
|
27
|
+
->setUsingCache(true)
|
|
28
|
+
->setRules($rules)
|
|
29
|
+
->setFinder($finder);
|
package/LICENSE.md
CHANGED
|
@@ -1,9 +1,21 @@
|
|
|
1
1
|
The MIT License (MIT)
|
|
2
2
|
|
|
3
|
-
Copyright (c)
|
|
3
|
+
Copyright (c) 2023 Fleetbase
|
|
4
4
|
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
6
11
|
|
|
7
|
-
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
8
14
|
|
|
9
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,32 +1,122 @@
|
|
|
1
|
-
|
|
1
|
+
<p align="center">
|
|
2
|
+
<img src="https://flb-assets.s3.ap-southeast-1.amazonaws.com/static/fleetbase-logo-svg.svg" width="380" height="100" />
|
|
3
|
+
</p>
|
|
4
|
+
<p align="center">
|
|
5
|
+
Open-source Fleet & Transport Management Extension for Fleetbase
|
|
6
|
+
</p>
|
|
2
7
|
|
|
3
|
-
|
|
8
|
+
---
|
|
4
9
|
|
|
10
|
+
## Overview
|
|
5
11
|
|
|
6
|
-
|
|
12
|
+
This monorepo contains both the frontend and backend components of the FleetOps extension for Fleetbase. The frontend is built using Ember.js and the backend is implemented in PHP.
|
|
7
13
|
|
|
8
|
-
|
|
9
|
-
* Ember CLI v3.24 or above
|
|
10
|
-
* Node.js v14 or above
|
|
14
|
+
### Requirements
|
|
11
15
|
|
|
16
|
+
- PHP 7.3.0 or above
|
|
17
|
+
- Ember.js v3.24 or above
|
|
18
|
+
- Ember CLI v3.24 or above
|
|
19
|
+
- Node.js v14 or above
|
|
12
20
|
|
|
13
|
-
##
|
|
21
|
+
## Structure
|
|
14
22
|
|
|
15
23
|
```
|
|
16
|
-
|
|
24
|
+
├── addon
|
|
25
|
+
├── app
|
|
26
|
+
├── assets
|
|
27
|
+
├── translations
|
|
28
|
+
├── config
|
|
29
|
+
├── node_modules
|
|
30
|
+
├── server
|
|
31
|
+
│ ├── config
|
|
32
|
+
│ ├── data
|
|
33
|
+
│ ├── migrations
|
|
34
|
+
│ ├── resources
|
|
35
|
+
│ ├── src
|
|
36
|
+
│ ├── tests
|
|
37
|
+
│ └── vendor
|
|
38
|
+
├── tests
|
|
39
|
+
├── testem.js
|
|
40
|
+
├── index.js
|
|
41
|
+
├── package.json
|
|
42
|
+
├── phpstan.neon.dist
|
|
43
|
+
├── phpunit.xml.dist
|
|
44
|
+
├── pnpm-lock.yaml
|
|
45
|
+
├── ember-cli-build.js
|
|
46
|
+
├── composer.json
|
|
47
|
+
├── CONTRIBUTING.md
|
|
48
|
+
├── LICENSE.md
|
|
49
|
+
├── README.md
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## Installation
|
|
53
|
+
|
|
54
|
+
### Backend
|
|
55
|
+
|
|
56
|
+
Install the PHP packages using Composer:
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
composer require fleetbase/core-api
|
|
60
|
+
composer require fleetbase/fleetops-api
|
|
17
61
|
```
|
|
62
|
+
### Frontend
|
|
18
63
|
|
|
64
|
+
Install the Ember.js Engine/Addon:
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
pnpm install @fleetbase/fleetops-engine
|
|
68
|
+
```
|
|
19
69
|
|
|
20
70
|
## Usage
|
|
21
71
|
|
|
22
|
-
|
|
72
|
+
### Backend
|
|
73
|
+
|
|
74
|
+
🧹 Keep a modern codebase with **PHP CS Fixer**:
|
|
75
|
+
```bash
|
|
76
|
+
composer lint
|
|
77
|
+
```
|
|
23
78
|
|
|
79
|
+
⚗️ Run static analysis using **PHPStan**:
|
|
80
|
+
```bash
|
|
81
|
+
composer test:types
|
|
82
|
+
```
|
|
24
83
|
|
|
25
|
-
|
|
84
|
+
✅ Run unit tests using **PEST**
|
|
85
|
+
```bash
|
|
86
|
+
composer test:unit
|
|
87
|
+
```
|
|
26
88
|
|
|
27
|
-
|
|
89
|
+
🚀 Run the entire test suite:
|
|
90
|
+
```bash
|
|
91
|
+
composer test
|
|
92
|
+
```
|
|
28
93
|
|
|
94
|
+
### Frontend
|
|
29
95
|
|
|
30
|
-
|
|
96
|
+
🧹 Keep a modern codebase with **ESLint**:
|
|
97
|
+
```bash
|
|
98
|
+
pnpm lint
|
|
99
|
+
```
|
|
31
100
|
|
|
32
|
-
|
|
101
|
+
✅ Run unit tests using **Ember/QUnit**
|
|
102
|
+
```bash
|
|
103
|
+
pnpm test
|
|
104
|
+
pnpm test:ember
|
|
105
|
+
pnpm test:ember-compatibility
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
🚀 Start the Ember Addon/Engine
|
|
109
|
+
```bash
|
|
110
|
+
pnpm start
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
🔨 Build the Ember Addon/Engine
|
|
114
|
+
```bash
|
|
115
|
+
pnpm build
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## Contributing
|
|
119
|
+
See the Contributing Guide for details on how to contribute to this project.
|
|
120
|
+
|
|
121
|
+
## License
|
|
122
|
+
This project is licensed under the MIT License.
|
package/composer.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "fleetbase/fleetops-api",
|
|
3
|
+
"version": "0.2.8",
|
|
4
|
+
"description": "Fleet & Transport Management Extension for Fleetbase",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"fleetbase-extension",
|
|
7
|
+
"fleetops",
|
|
8
|
+
"last-mile",
|
|
9
|
+
"tms",
|
|
10
|
+
"delivery management"
|
|
11
|
+
],
|
|
12
|
+
"license": "MIT",
|
|
13
|
+
"authors": [
|
|
14
|
+
{
|
|
15
|
+
"name": "Fleetbase Pte Ltd.",
|
|
16
|
+
"email": "hello@fleetbase.io"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "Ronald A. Richardson",
|
|
20
|
+
"email": "ron@fleetbase.io"
|
|
21
|
+
}
|
|
22
|
+
],
|
|
23
|
+
"require": {
|
|
24
|
+
"php": "^7.4|^8.0",
|
|
25
|
+
"fleetbase/core-api": "^1.3.1",
|
|
26
|
+
"barryvdh/laravel-dompdf": "^2.0",
|
|
27
|
+
"brick/geo": "0.7.2",
|
|
28
|
+
"cknow/laravel-money": "^7.1",
|
|
29
|
+
"geocoder-php/google-maps-places-provider": "^1.4",
|
|
30
|
+
"giggsey/libphonenumber-for-php": "^8.13",
|
|
31
|
+
"league/geotools": "^1.1.0",
|
|
32
|
+
"milon/barcode": "^9.0",
|
|
33
|
+
"php-http/guzzle7-adapter": "^1.0",
|
|
34
|
+
"psr/http-factory-implementation": "*",
|
|
35
|
+
"toin0u/geocoder-laravel": "^4.4",
|
|
36
|
+
"webit/eval-math": "^1.0"
|
|
37
|
+
},
|
|
38
|
+
"require-dev": {
|
|
39
|
+
"friendsofphp/php-cs-fixer": "^3.34.1",
|
|
40
|
+
"nunomaduro/collision": "^5.11.0|^6.4.0",
|
|
41
|
+
"pestphp/pest": "^1.22.6",
|
|
42
|
+
"phpstan/phpstan": "^1.10.38",
|
|
43
|
+
"symfony/var-dumper": "^5.4.29"
|
|
44
|
+
},
|
|
45
|
+
"autoload": {
|
|
46
|
+
"psr-4": {
|
|
47
|
+
"Fleetbase\\FleetOps\\": "server/src/"
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
"autoload-dev": {
|
|
51
|
+
"psr-4": {
|
|
52
|
+
"Fleetbase\\Tests\\": "server/tests/"
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
"minimum-stability": "dev",
|
|
56
|
+
"prefer-stable": true,
|
|
57
|
+
"extra": {
|
|
58
|
+
"laravel": {
|
|
59
|
+
"providers": [
|
|
60
|
+
"Fleetbase\\FleetOps\\Providers\\FleetOpsServiceProvider",
|
|
61
|
+
"Fleetbase\\FleetOps\\Providers\\EventServiceProvider"
|
|
62
|
+
]
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
"config": {
|
|
66
|
+
"vendor-dir": "./server_vendor",
|
|
67
|
+
"sort-packages": true,
|
|
68
|
+
"preferred-install": "dist",
|
|
69
|
+
"allow-plugins": {
|
|
70
|
+
"pestphp/pest-plugin": true,
|
|
71
|
+
"php-http/discovery": true
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
"scripts": {
|
|
75
|
+
"lint": "php-cs-fixer fix -v",
|
|
76
|
+
"test:lint": "php-cs-fixer fix -v --dry-run",
|
|
77
|
+
"test:types": "phpstan analyse --ansi --memory-limit=4G",
|
|
78
|
+
"test:unit": "pest --colors=always",
|
|
79
|
+
"test": [
|
|
80
|
+
"@test:lint",
|
|
81
|
+
"@test:types",
|
|
82
|
+
"@test:unit"
|
|
83
|
+
]
|
|
84
|
+
}
|
|
85
|
+
}
|
package/extension.json
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Fleet-Ops",
|
|
3
|
+
"version": "0.2.8",
|
|
4
|
+
"description": "Fleet & Transport Management Extension for Fleetbase",
|
|
5
|
+
"repository": "https://github.com/fleetbase/fleetops",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"author": "Fleetbase Pte Ltd <hello@fleetbase.io>",
|
|
8
|
+
"engine": "package.json",
|
|
9
|
+
"api": "composer.json"
|
|
10
|
+
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fleetbase/fleetops-engine",
|
|
3
|
-
"version": "0.2.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.2.8",
|
|
4
|
+
"description": "Fleet & Transport Management Extension for Fleetbase",
|
|
5
5
|
"fleetbase": {
|
|
6
6
|
"route": "fleet-ops",
|
|
7
7
|
"dashboard": "int/v1/fleet-ops/dashboard"
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"ember-addon",
|
|
16
16
|
"ember-engine"
|
|
17
17
|
],
|
|
18
|
-
"repository": "https://github.com/fleetbase/fleetops
|
|
18
|
+
"repository": "https://github.com/fleetbase/fleetops",
|
|
19
19
|
"license": "MIT",
|
|
20
20
|
"author": "Fleetbase Pte Ltd <hello@fleetbase.io>",
|
|
21
21
|
"directories": {
|
package/phpunit.xml.dist
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
3
|
+
xsi:noNamespaceSchemaLocation="./server/vendor/phpunit/phpunit/phpunit.xsd"
|
|
4
|
+
colors="true"
|
|
5
|
+
>
|
|
6
|
+
<testsuites>
|
|
7
|
+
<testsuite name="default">
|
|
8
|
+
<directory suffix=".php">./server/tests</directory>
|
|
9
|
+
</testsuite>
|
|
10
|
+
</testsuites>
|
|
11
|
+
<filter>
|
|
12
|
+
<whitelist processUncoveredFilesFromWhitelist="true">
|
|
13
|
+
<directory suffix=".php">./server/src</directory>
|
|
14
|
+
</whitelist>
|
|
15
|
+
</filter>
|
|
16
|
+
</phpunit>
|