HEX
Server: LiteSpeed
System: Linux s3.sitechai.com 4.18.0-553.51.1.lve.1.el8.x86_64 #1 SMP Wed May 14 14:34:57 UTC 2025 x86_64
User: workzeni (2217)
PHP: 8.1.32
Disabled: mail, show_source, system, shell_exec, passthru, exec, eval, shell
Upload Files
File: /home/workzeni/agency-erp-05.workzenix.com/routes/web.php
<?php

use App\Http\Controllers\Admin\AdminController;
use App\Http\Controllers\Auth\UserManage;
use App\Http\Controllers\FundTransferController;
use App\Http\Controllers\HotelController;
use App\Http\Controllers\Manager\ManagerController;
use App\Http\Controllers\Module\AgencyController;
use App\Http\Controllers\Module\QoutaController;
use App\Http\Controllers\PaymentController;
use App\Http\Controllers\SeasonController;
use App\Http\Controllers\User\UserController;
use Illuminate\Support\Facades\Route;
use Livewire\Volt\Volt;

// Route::get('/', function () {
//     return view('welcome');
// })->name('home');

// Route::get('/', [AdminController::class, 'indextest']);

// Route::view('dashboard', 'dashboard')->middleware(['auth', 'verified'])->name('dashboard');

// Route::middleware(['auth'])->group(function () {
//     Route::redirect('settings', 'settings/profile');

//     Volt::route('settings/profile', 'settings.profile')->name('settings.profile');
//     Volt::route('settings/password', 'settings.password')->name('settings.password');
//     Volt::route('settings/appearance', 'settings.appearance')->name('settings.appearance');
// });

// Super Admin Routes
Route::middleware(['auth', 'role:1'])->prefix('admin')->name('admin.')->group(function () {
    Route::get('/dashboard', [AdminController::class, 'index'])->name('dashboard');

    // agency manage
    Route::get('/agency', [AgencyController::class, 'agency_index'])->name('agency.index');
    Route::get('/agency/create', [AgencyController::class, 'agency_create'])->name('agency.create');
    Route::get('/agency/{id}/edit', [AgencyController::class, 'agency_edit'])->name('agency.edit');

    // Qouta
    Route::get('/qouta', [QoutaController::class, 'qouta_index'])->name('qouta.index');
    Route::get('/qouta/create', [QoutaController::class, 'qouta_create'])->name('qouta.create');
    Route::get('/qouta/{id}/edit', [QoutaController::class, 'qouta_edit'])->name('qouta.edit');

    // Payment
    Route::prefix('payment/')->as('payment.')->controller(PaymentController::class)->group(function () {
        Route::get('list', 'list')->name('list');
        Route::get('create', 'create')->name('create');
        Route::get('/get-users/{agency}', 'getByAgency');
        Route::get('edit/{payment}', 'edit')->name('edit');
    });
});

// Manager Routes
Route::middleware(['auth', 'role:1,2'])->prefix('manager')->name('manager.')->group(function () {
    Route::get('/manager', [ManagerController::class, 'index'])->name('dashboard');
});

// Account Routes
Route::middleware(['auth', 'role:1,3'])->prefix('account')->name('account.')->group(function () {
    Route::get('/account', function () {
        return 'Account Page';
    })->name('dashboard');
});

// User Routes
Route::middleware(['auth', 'role:1,4'])->prefix('agency')->name('user.')->group(function () {
    Route::get('/deshboard', [UserController::class, 'index'])->name('dashboard');

    // Payment
    Route::prefix('payment/')->as('payment.')->controller(PaymentController::class)->group(function () {
        Route::get('list', 'list')->name('list');
        Route::get('create', 'create')->name('create');
        Route::get('/get-users/{agency}', 'getByAgency');
        Route::get('edit/{payment}', 'edit')->name('edit');
        // Route::post('update/status/{payment}', 'approve')->name('approve');
    });

});

// Storage Routes
Route::middleware(['auth', 'role:1,2,3'])->group(function () {

    Route::get('/qouta-data', [QoutaController::class, 'qoutaData'])->name('admin.qouta.data');

    // season
    Route::prefix('seasons/')->as('season.')->controller(SeasonController::class)->group(function () {
        Route::get('list', 'list')->name('list');
        Route::post('store', 'store')->name('store');
        Route::put('{season}', 'update')->name('update');
        Route::delete('{season}', 'destroy')->name('destroy');
    });

    // agency
    Route::get('/admin/agency-login/{agency_id}', [AgencyController::class, 'agency_loginAs'])->name('admin.agency.login')->middleware(['auth']);
    Route::post('/agency/active/{id}', [AgencyController::class, 'agency_active'])->name('agency.active');
    Route::post('/agency/store', [AgencyController::class, 'agency_store'])->name('agency.store');
    Route::post('/agency/{id}/update', [AgencyController::class, 'agency_update'])->name('agency.update');
    Route::delete('/agency/{id}/delete', [AgencyController::class, 'agency_destroy'])->name('agency.destroy');

    // qounty
    Route::post('/qounty/store', [QoutaController::class, 'qoute_store'])->name('qouta.store');
    Route::put('/qounty/{id}/update', [QoutaController::class, 'qouta_update'])->name('qouta.update');
    Route::delete('/qounty/{id}/delete', [QoutaController::class, 'qouta_destroy'])->name('qouta.destroy');

    // Fund Transfer
    Route::prefix('fund-transfer/')->as('fund-transfer.')->controller(FundTransferController::class)->group(function () {
        Route::get('list', 'fundTransferList')->name('list');
        Route::get('show/{fundTransfer}', 'fundTransferShow')->name('show');
        Route::get('create', 'fundTransferCreate')->name('create');
        Route::post('store', 'fundTransferStore')->name('store');
        Route::get('edit/{id}', 'fundTransferEdit')->name('edit');
        Route::put('update/{id}', 'fundTransferUpdate')->name('update');
    });

    // Transaction
    Route::get('/transaction/agencies', [PaymentController::class, 'agencyTransactionList'])->name('transaction.agency_list');

    // user manage
    Route::get('/user/manage', [UserManage::class, 'user_index'])->name('manage-user.index');
    Route::get('/user/create', [UserManage::class, 'user_create'])->name('manage-user.create');
    Route::post('/user/store', [UserManage::class, 'user_store'])->name('manage-user.store');
    Route::get('/user/{id}/edit', [UserManage::class, 'user_edit'])->name('manage-user.edit');
    Route::put('/user/{id}/update', [UserManage::class, 'user_update'])->name('manage-user.update');
    Route::get('/impersonate/{id}', [UserManage::class, 'user_loginAs'])->name('manage-user.login');

});

Route::middleware(['auth', 'role:1,2,3,4'])->group(function () {
    Route::get('/currency-balance', [UserController::class, 'getBalance'])->name('currency.balance');
    Route::get('/get-agency-balance/{id}', [PaymentController::class, 'getAgencyBalance']);
    Route::get('/get-quota-by-agency', [HotelController::class, 'getQuotaByAgency'])->name('quota.byAgency');

    // agency profile
    Route::prefix('agency/')->as('agency.')->controller(AgencyController::class)->group(function () {
        Route::get('/{id}/profile', 'manage_profile')->name('manage_profile');
        Route::put('update_profile/{id}', 'update_profile')->name('update_profile');
    });

    // payment
    Route::prefix('payment/')->as('payment.')->controller(PaymentController::class)->group(function () {
        Route::post('store', 'store')->name('store');
        Route::put('update/{payment}', 'update')->name('update');
        Route::delete('delete/{payment}', 'delete')->name('delete');
    });

    // Transaction
    Route::get('/transaction/list', [PaymentController::class, 'allTransaction'])->name('transaction.list');
    Route::get('/agency/transactions/{agency}', [PaymentController::class, 'agencyTransaction'])->name('transaction.agency');
    Route::get('/transactions/{id}', [PaymentController::class, 'showTransaction'])->name('transaction.view');
    Route::get('admin/transaction/{id}/invoice/pdf', [PaymentController::class, 'downloadInvoicePdf'])->name('admin.transaction.invoice.pdf');

    // Pilgrim
    // Route::prefix('pilgrim/')->as('pilgrim.')->controller(PaymentController::class)->group(function () {

    // });

    // hotel booking
    Route::prefix('hotel-booking/')->as('hotel.')->controller(HotelController::class)->group(function () {
        Route::get('list', 'index')->name('list');
        Route::get('create', 'create')->name('create');
        Route::post('store', 'store')->name('store');
        Route::get('show/{id}', 'show')->name('show');
        Route::post('status-update/{id}', 'updateStatus')->name('status.update');
    });
});

Route::get('/test', function () {
    return back()->with('success', 'flash works');
});

require __DIR__.'/auth.php';