dashboard-admin/routes/api.php

108 lines
4.9 KiB
PHP

<?php
use App\Http\Controllers\Admin\AdminRefundController;
use App\Http\Controllers\Admin\AdminSettingController;
use App\Http\Controllers\Admin\AdminUserController;
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\API\LoginApiController;
use App\Http\Controllers\Profile\ProfileController;
use App\Http\Controllers\User\UserContactController;
use App\Http\Controllers\User\UserDashboardController;
use App\Http\Controllers\User\UserRefundController;
use App\Http\Controllers\User\UserTransactionController;
/*
|--------------------------------------------------------------------------
| 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('auth:sanctum')->get('/user', function (Request $request) {
// return $request->user();
// });
Route::group(
[
'middleware' => 'api',
'prefix' => 'auth',
],
function () {
Route::post('login', [LoginApiController::class,'login']);
Route::post('logout', [LoginApiController::class,'logout']);
Route::post('refresh', [LoginApiController::class,'refresh']);
Route::post('me', [LoginApiController::class,'me']);
Route::post('register',[LoginApiController::class,'register']);
Route::post('hai',[LoginApiController::class,'hai']);
Route::post('status',[LoginApiController::class,'check']);
},
);
Route::middleware(['auth'])->group(function(){
Route::middleware(['admin'])->group(function(){
Route::prefix('admin')->group(function(){
// aprove atau deny dan hapus user
Route::controller(AdminUserController::class)->group(function(){
Route::delete('admin-user/{id}','delete')->name('admin-user.destroy');
Route::put('admin-user/approve-user/{id}', 'approveUser')->name('admin-user.approve');
Route::put('admin-user/deny-user/{id}', 'denyUser')->name('admin-user.deny');
});
// approve atau deny dan hapus refund
Route::controller(AdminRefundController::class)->group(function(){
Route::put('admin-refund/approve-refund/{id}','approveRefund')->name('admin-refund.approve');
Route::put('admin-refund/deny-refund/{id}','denyRefund')->name('admin-refund.deny');
});
Route::controller(AdminSettingController::class)->group(function(){
Route::post('admin-setting/store','store')->name('admin-setting.store');
Route::put('admin-setting/active/{id}','activeSetting')->name('admin-setting.active-setting');
});
});
});
Route::prefix('profile')->group(function(){
Route::controller(ProfileController::class)->group(function(){
Route::put('update','update')->name('profile.update');
});
});
Route::middleware(['user'])->group(function(){
Route::prefix('user')->group(function(){
Route::controller(UserDashboardController::class)->group(function(){
});
Route::controller(UserContactController::class)->group(function(){
Route::post('user-contact','store')->name('user-contact.store');
Route::delete('user-contact/delete/{id}','destroy')->name('user-contact.destroy');
Route::get('user-contact/get-user-contact','getContact')->name('user-contact.get');
Route::get('user-contact/cek-contact/{email}','checkEmail')->name('user-contact.email');
});
Route::controller(UserTransactionController::class)->group(function(){
// Pembeli
Route::post('user-pembeli','store')->name('user-pembeli.store');
Route::put('user-pembeli/bayar-transaksi/{id}','payTransaction')->name('user-pembeli.pay');
Route::put('user-pembeli/batal-transaksi/{id}','cancelTransaction')->name('user-pembeli.cancel');
Route::put('user-pembeli/transaksi-selesai/{id}','finishTransaction')->name('user-pembeli.finish');
Route::put('user-pembeli/transaksi-komplain/{id}','complainTransaction')->name('user-pembeli.complain');
// Penjual
Route::put('user-penjual/terima-transaksi/{id}','acceptTransaction')->name('user-penjual.accept');
Route::put('user-penjual/kirim-pesanan/{id}','sendingOrder')->name('user-penjual.sending');
Route::put('user-penjual/selesai-kirim-pesanan/{id}','sentOrder')->name('user-penjual.sent');
});
Route::controller(UserRefundController::class)->group(function(){
Route::post('user-refund','store')->name('user-refund.store');
});
});
});
});