prefix('tms') ->group(function () { Route::get('/install', [InstallController::class, 'index']); Route::post('/install', [InstallController::class, 'install']); Route::get('/install/uninstall', [InstallController::class, 'uninstall']); Route::get('/install/update', [InstallController::class, 'update']); Route::get('/dashboard', [DashboardController::class, 'index']); // Shipments Route::get('/shipments', [ShipmentController::class, 'index']); Route::get('/shipments/create', [ShipmentController::class, 'create']); Route::post('/shipments', [ShipmentController::class, 'store']); Route::get('/shipments/{id}', [ShipmentController::class, 'show']); Route::get('/shipments/{id}/edit', [ShipmentController::class, 'edit']); Route::put('/shipments/{id}', [ShipmentController::class, 'update']); Route::post('/shipments/{id}/status', [ShipmentController::class, 'updateStatus']); Route::post('/shipments/from-transaction/{transaction_id}', [ShipmentController::class, 'createFromTransaction']); Route::post('/shipments/from-mission/{mission_id}', [ShipmentController::class, 'createFromFieldMission']); Route::post('/shipments/from-project/{project_id}', [ShipmentController::class, 'createFromProject']); Route::post('/shipments/geocode', [ShipmentController::class, 'geocodeAddress']); Route::delete('/shipments/{id}', [ShipmentController::class, 'destroy']); // Vehicles Route::get('/vehicles', [VehicleController::class, 'index']); Route::get('/vehicles/create', [VehicleController::class, 'create']); Route::post('/vehicles', [VehicleController::class, 'store']); Route::get('/vehicles/{id}/edit', [VehicleController::class, 'edit']); Route::put('/vehicles/{id}', [VehicleController::class, 'update']); Route::delete('/vehicles/{id}', [VehicleController::class, 'destroy']); // Drivers Route::get('/drivers', [DriverController::class, 'index']); Route::get('/drivers/create', [DriverController::class, 'create']); Route::post('/drivers', [DriverController::class, 'store']); Route::get('/drivers/{id}/edit', [DriverController::class, 'edit']); Route::put('/drivers/{id}', [DriverController::class, 'update']); Route::delete('/drivers/{id}', [DriverController::class, 'destroy']); // Carriers Route::get('/carriers', [CarrierController::class, 'index']); Route::get('/carriers/create', [CarrierController::class, 'create']); Route::post('/carriers', [CarrierController::class, 'store']); Route::get('/carriers/{id}/edit', [CarrierController::class, 'edit']); Route::put('/carriers/{id}', [CarrierController::class, 'update']); Route::delete('/carriers/{id}', [CarrierController::class, 'destroy']); // Settings Route::get('/settings', [SettingsController::class, 'index']); Route::put('/settings', [SettingsController::class, 'update']); // Contact integration Route::get('/contacts/{contact_id}/shipments', [ContactTmsController::class, 'shipments']); // GPS tracking Route::get('/tracking', [TrackingController::class, 'index']); Route::get('/tracking/live-data', [TrackingController::class, 'liveData']); Route::get('/tracking/shipments/{shipment_id}', [TrackingController::class, 'shipmentMap']); Route::get('/tracking/shipments/{shipment_id}/data', [TrackingController::class, 'shipmentTrackData']); Route::post('/tracking/location', [TrackingController::class, 'storeLocation']); // Driver GPS sharing Route::get('/driver/track', [DriverTrackController::class, 'index']); // Routes Route::get('/routes', [RouteController::class, 'index']); Route::get('/routes/create', [RouteController::class, 'create']); Route::post('/routes', [RouteController::class, 'store']); Route::get('/routes/{id}', [RouteController::class, 'show']); Route::get('/routes/{id}/edit', [RouteController::class, 'edit']); Route::put('/routes/{id}', [RouteController::class, 'update']); Route::post('/routes/{id}/optimize', [RouteController::class, 'optimize']); Route::delete('/routes/{id}', [RouteController::class, 'destroy']); // Customs brokers Route::get('/brokers', [CustomsBrokerController::class, 'index']); Route::get('/brokers/create', [CustomsBrokerController::class, 'create']); Route::post('/brokers', [CustomsBrokerController::class, 'store']); Route::get('/brokers/{id}/edit', [CustomsBrokerController::class, 'edit']); Route::put('/brokers/{id}', [CustomsBrokerController::class, 'update']); Route::delete('/brokers/{id}', [CustomsBrokerController::class, 'destroy']); // Customs clearance Route::get('/customs', [CustomsClearanceController::class, 'index']); Route::get('/customs/create', [CustomsClearanceController::class, 'create']); Route::post('/customs', [CustomsClearanceController::class, 'store']); Route::get('/customs/{id}', [CustomsClearanceController::class, 'show']); Route::get('/customs/{id}/edit', [CustomsClearanceController::class, 'edit']); Route::put('/customs/{id}', [CustomsClearanceController::class, 'update']); Route::post('/customs/{id}/status', [CustomsClearanceController::class, 'updateStatus']); Route::post('/customs/from-transaction/{transaction_id}', [CustomsClearanceController::class, 'createFromTransaction']); Route::post('/customs/from-shipment/{shipment_id}', [CustomsClearanceController::class, 'createFromShipment']); Route::post('/customs/{id}/documents', [CustomsClearanceController::class, 'uploadDocument']); Route::delete('/customs/{id}/documents/{document_id}', [CustomsClearanceController::class, 'deleteDocument']); Route::delete('/customs/{id}', [CustomsClearanceController::class, 'destroy']); });