Files
online.tbbank.gov.tm-larave…/routes/api.php
2025-06-11 16:06:01 +05:00

101 lines
4.8 KiB
PHP

<?php
use App\Http\Controllers\AlertController;
use App\Http\Controllers\Api\CardOrder\CardOrderController;
use App\Http\Controllers\Api\FetchLoanHistoryController;
use App\Http\Controllers\Api\LoanOrder\Remaining\LoanOrderRemainingOrderController;
use App\Http\Controllers\Api\LoanPaidOffLetterOrderController;
use App\Http\Controllers\FetchCardHistoryController;
use App\Http\Controllers\FetchLoanRemainingController;
use App\Http\Controllers\MetricsController;
use App\Http\Controllers\ProfileController;
use App\Http\Middleware\OnlySystemUser;
use App\Modules\ApiAuth\Controllers\ApiAuthController;
use App\Modules\BaseAppEnum\Controllers\BaseAppEnumController;
use App\Modules\Branch\Controllers\BranchController;
use App\Modules\LoanOrder\Controllers\LoanOrderController;
use App\Modules\LoanRemainingOrder\Controllers\LoanRemainingOrderController;
use App\Modules\Province\Controllers\ProvinceController;
use Illuminate\Support\Facades\Route;
use Laravel\Nova\Http\Middleware\Authenticate;
use Laravel\Nova\Http\Middleware\Authorize;
/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider and all of them will
| be assigned to the "api" middleware group. Make something great!
|
*/
Route::middleware(['nova', Authenticate::class, Authorize::class, OnlySystemUser::class])->group(function () {
// Fetch card history...
Route::post('fetch-card-history', [FetchCardHistoryController::class, 'index']);
// Fetch loan history...
Route::post('fetch-loan-history', [FetchLoanHistoryController::class, 'index']);
// Fetch loan remaining...
Route::post('fetch-loan-remaining', [FetchLoanRemainingController::class, 'index']);
});
// Auth...
Route::post('auth/register', [ApiAuthController::class, 'register']);
Route::post('auth/login', [ApiAuthController::class, 'login']);
Route::post('auth/verify', [ApiAuthController::class, 'verify']);
Route::middleware('auth:sanctum')
->post('auth/delete-user', [ApiAuthController::class, 'delete']);
// Branches...
Route::get('branches', [BranchController::class, 'index']);
// Provinces...
Route::get('provinces', [ProvinceController::class, 'index']);
// Base enums...
Route::get('base-app-enums', [BaseAppEnumController::class, 'index']);
Route::middleware(['auth:sanctum', 'not_banned'])->group(function () {
// Profile...
Route::get('profile', [ProfileController::class, 'index']);
Route::post('profile', [ProfileController::class, 'store']);
// Metrics...
Route::get('/metrics', [MetricsController::class, 'index']);
// Loan order... [tested expect: update]
Route::get('loan-order', [LoanOrderController::class, 'index']);
Route::get('loan-order/{loanOrder}', [LoanOrderController::class, 'show']);
Route::post('loan-order', [LoanOrderController::class, 'store']);
Route::post('loan-order/{loanOrder}', [LoanOrderController::class, 'update']);
Route::delete('loan-order/{loanOrder}', [LoanOrderController::class, 'destroy']);
// Loan remaning... [tested fully]
Route::get('loan-remaining', [LoanRemainingOrderController::class, 'index']);
Route::get('loan-remaining-order', [LoanOrderRemainingOrderController::class, 'index']);
Route::get('loan-remaining-order/{order}', [LoanOrderRemainingOrderController::class, 'show']);
Route::post('loan-remaining-order', [LoanOrderRemainingOrderController::class, 'store']);
Route::post('loan-remaining-order/{order}', [LoanOrderRemainingOrderController::class, 'update']);
Route::delete('loan-remaining-order/{order}', [LoanOrderRemainingOrderController::class, 'destroy']);
// Loan paid off letters... [tested fully]
Route::get('loan-paid-off-letter-orders', [LoanPaidOffLetterOrderController::class, 'index']);
Route::get('loan-paid-off-letter-orders/{order}', [LoanPaidOffLetterOrderController::class, 'show']);
Route::post('loan-paid-off-letter-orders', [LoanPaidOffLetterOrderController::class, 'store']);
Route::post('loan-paid-off-letter-orders/{order}', [LoanPaidOffLetterOrderController::class, 'update']);
Route::delete('loan-paid-off-letter-orders/{order}', [LoanPaidOffLetterOrderController::class, 'destroy']);
// Alerts...
Route::get('alerts', [AlertController::class, 'index']);
// Card order...
Route::get('card-order', [CardOrderController::class, 'index']);
Route::get('card-order/{cardOrder}', [CardOrderController::class, 'show']);
Route::post('card-order', [CardOrderController::class, 'store']);
Route::post('card-order/{cardOrder}', [CardOrderController::class, 'update']);
Route::delete('card-order/{cardOrder}', [CardOrderController::class, 'destroy']);
});