- **Trip Incidents**: Created the `AdminTripController@incidents` API endpoint, built the `incidents.blade.php` view, enabled the incidents sidebar link, and added test coverage (`TripIncidentDashboardTest.php`). - **Drop-off Points (LGU Geofence)**: Added a Barangay (LGU) dropdown to the drop-off point form. Integrated `Turf.js` to render the LGU boundary polygon on Leaflet and restrict pin placement (clicks, drags, and address search) to within the selected boundary. - **Trip Calendar**: Changed the shortcut for opening the Daily Digest from Ctrl+Click to Shift+Click on calendar dates. - **API fixes**: Corrected the Barangay fetch endpoint to `/api/v1/geo/barangays` in the Drop-off points view.
53 lines
2.7 KiB
PHP
53 lines
2.7 KiB
PHP
<?php
|
|
|
|
use App\Http\Controllers\Store\StoreDashboardController;
|
|
use Illuminate\Support\Facades\Route;
|
|
|
|
Route::redirect('/', '/login');
|
|
|
|
Route::view('/login', 'auth.login')->name('login');
|
|
|
|
Route::redirect('/dashboard', '/admin/dashboard');
|
|
|
|
Route::get('/qr/{serial}', function ($serial) {
|
|
return "Scan QR {$serial}";
|
|
})->name('qr.verify');
|
|
|
|
Route::prefix('admin')->group(function () {
|
|
Route::view('/dashboard', 'admin.dashboard')->name('admin.dashboard');
|
|
Route::view('/households', 'admin.households')->name('admin.households');
|
|
Route::view('/service-areas', 'admin.service-areas')->name('admin.service-areas');
|
|
Route::view('/qr-batches', 'admin.qr-batches')->name('admin.qr-batches');
|
|
Route::view('/qr-search', 'admin.qr-search')->name('admin.qr-search');
|
|
Route::view('/drop-off-points', 'admin.drop-off-points')->name('admin.drop-off-points');
|
|
Route::view('/dumpsites', 'admin.dumpsites')->name('admin.dumpsites');
|
|
Route::view('/routes', 'admin.routes')->name('admin.routes');
|
|
Route::view('/users', 'admin.users')->name('admin.users');
|
|
Route::view('/teams', 'admin.teams')->name('admin.teams');
|
|
Route::view('/trucks', 'admin.trucks')->name('admin.trucks');
|
|
Route::view('/trips', 'admin.trips')->name('admin.trips');
|
|
Route::view('/partner-stores', 'admin.partner-stores')->name('admin.partner-stores');
|
|
Route::view('/reports', 'admin.reports')->name('admin.reports');
|
|
|
|
// New from this batch
|
|
Route::view('/operations/live', 'admin.live-tracking')->name('admin.live-tracking');
|
|
Route::view('/finance', 'admin.finance')->name('admin.finance');
|
|
Route::view('/settings', 'admin.settings')->name('admin.settings');
|
|
Route::view('/lgus', 'admin.lgus')->name('admin.lgus');
|
|
Route::view('/system-users', 'admin.system-users')->name('admin.system-users');
|
|
Route::view('/barangays', 'admin.barangays')->name('admin.barangays');
|
|
|
|
Route::view('/operations/calendar', 'admin.calendar')->name('admin.calendar');
|
|
Route::view('/operations/incidents', 'admin.incidents')->name('admin.incidents');
|
|
});
|
|
|
|
Route::prefix('store')->name('store.')->group(function () {
|
|
Route::redirect('/', '/store/dashboard')->name('root');
|
|
Route::get('/dashboard', [StoreDashboardController::class, 'index'])->name('dashboard');
|
|
Route::get('/sales', [StoreDashboardController::class, 'sales'])->name('sales');
|
|
Route::get('/inventory', [StoreDashboardController::class, 'inventory'])->name('inventory');
|
|
Route::get('/qr-purchases', [StoreDashboardController::class, 'qrPurchases'])->name('qr-purchases');
|
|
Route::get('/financials', [StoreDashboardController::class, 'financials'])->name('financials');
|
|
Route::get('/profile', [StoreDashboardController::class, 'profile'])->name('profile');
|
|
});
|