223 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			223 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
use Illuminate\Support\Facades\Route;
 | 
						|
 | 
						|
//Admin
 | 
						|
use App\Http\Controllers\Admin\User\AdminUserController;
 | 
						|
use App\Http\Controllers\Admin\Setting\AdminSettingController;
 | 
						|
use App\Http\Controllers\Admin\Dashboard\AdminDashboardController;
 | 
						|
use App\Http\Controllers\Admin\Notification\AdminNotification;
 | 
						|
use App\Http\Controllers\Admin\Transaction\AdminTransactionController;
 | 
						|
use App\Http\Controllers\Admin\Refund\AdminRefundController;
 | 
						|
 | 
						|
//Login
 | 
						|
use App\Http\Controllers\Login\LoginController;
 | 
						|
 | 
						|
//User
 | 
						|
use App\Http\Controllers\User\Contact\UserContactController;
 | 
						|
use App\Http\Controllers\User\Refund\UserRefundController;
 | 
						|
use App\Http\Controllers\User\Dashboard\UserDashboardController;
 | 
						|
use App\Http\Controllers\User\Transaction\UserTransactionController;
 | 
						|
use App\Http\Controllers\User\Pembeli\PembeliController;
 | 
						|
use App\Http\Controllers\User\Penjual\PenjualController;
 | 
						|
 | 
						|
//Profile
 | 
						|
use App\Http\Controllers\Profile\ProfileController;
 | 
						|
 | 
						|
//Invoice
 | 
						|
use App\Http\Controllers\Invoice\InvoiceController;
 | 
						|
use App\Http\Controllers\User\Notification\UserNotification;
 | 
						|
 | 
						|
// use Illuminate\Foundation\Auth\User;
 | 
						|
 | 
						|
/*
 | 
						|
|--------------------------------------------------------------------------
 | 
						|
| Web Routes
 | 
						|
|--------------------------------------------------------------------------
 | 
						|
|
 | 
						|
| Here is where you can register web routes for your application. These
 | 
						|
| routes are loaded by the RouteServiceProvider and all of them will
 | 
						|
| be assigned to the "web" middleware group. Make something great!
 | 
						|
|
 | 
						|
*/
 | 
						|
 | 
						|
//Index
 | 
						|
Route::get('/', function () {
 | 
						|
    return view('welcome'
 | 
						|
    );
 | 
						|
})->name('homepage');
 | 
						|
 | 
						|
 | 
						|
 | 
						|
// Login, logout dan register
 | 
						|
Route::controller(LoginController::class)->group(function(){
 | 
						|
    Route::get('login','login')->name('login');
 | 
						|
    Route::get('logout','logout')->name('logout');
 | 
						|
    Route::post('authenticate','authenticate')->name('autentikasi');
 | 
						|
    Route::post('register','register')->name('register');
 | 
						|
    Route::get('cek-email','accountStatus')->name('status-akun');
 | 
						|
    Route::get('cari-provinsi','searchProvince')->name('cari-provinsi');
 | 
						|
    Route::get('cari-kota','searchCity')->name('cari-kota');
 | 
						|
    Route::get('cari-kecamatan','searchDistrict')->name('cari-kecamatan');
 | 
						|
    Route::get('cari-kelurahan','searchVillage')->name('cari-kelurahan');
 | 
						|
    Route::post('kode-verifikasi','sendVerificationCode')->name('kirim-kode');
 | 
						|
    Route::get('ocr','getOcr');
 | 
						|
    Route::get('email','email');
 | 
						|
    Route::get('test','invoice');
 | 
						|
});
 | 
						|
 | 
						|
// admin dan user
 | 
						|
Route::middleware(['auth'])->group(function(){
 | 
						|
 | 
						|
    Route::prefix('profile')->group(function(){
 | 
						|
        Route::controller(ProfileController::class)->group(function(){
 | 
						|
            Route::get('/','index')->name('profile.index');
 | 
						|
            Route::post('update','updateProfile')->name('profile.update');
 | 
						|
            Route::put('ganti-password','changePassword')->name('profile.change-password');
 | 
						|
        });
 | 
						|
    });
 | 
						|
 | 
						|
    Route::prefix('invoice')->group(function(){
 | 
						|
        Route::controller(InvoiceController::class)->group(function(){
 | 
						|
            Route::get('invoice/{id}','getInvoice')->name('invoice.get');
 | 
						|
            Route::get('export-invoice','exportInvoice')->name('invoice.export');
 | 
						|
        });
 | 
						|
    });
 | 
						|
 | 
						|
    Route::middleware(['admin'])->group(function(){
 | 
						|
        Route::prefix('admin')->group(function(){
 | 
						|
 | 
						|
            // Tampilan dashboard admin beserta perhitungan
 | 
						|
            Route::controller(AdminDashboardController::class)->group(function(){
 | 
						|
                Route::get('/','index')->name('admin.index');
 | 
						|
                Route::get('admin-dashboard/get-data-dashboard','getDataBySearch')->name('admin.get-data-dashboard');
 | 
						|
            });
 | 
						|
 | 
						|
            // Tampilan, aprove atau deny dan hapus user
 | 
						|
            Route::controller(AdminUserController::class)->group(function(){
 | 
						|
                Route::get('admin-user','index')->name('admin-user.index');
 | 
						|
                Route::get('admin-user/list-user','listUser')->name('admin-user.list-user');
 | 
						|
                Route::get('admin-user/{id}','show')->name('admin-user.show');
 | 
						|
                Route::delete('admin-user/hapus-user','destroy')->name('admin-user.destroy');
 | 
						|
                Route::put('admin-user/approve-user', 'approveUser')->name('admin-user.approve');
 | 
						|
                Route::put('admin-user/deny-user', 'denyUser')->name('admin-user.deny');
 | 
						|
            });
 | 
						|
 | 
						|
            // Tampilan transaksi (Sudah)
 | 
						|
            Route::controller(AdminTransactionController::class)->group(function(){
 | 
						|
                Route::get('admin-transaction','index')->name('admin-transaction.index');
 | 
						|
                Route::get('admin-transaction/detail/{id}','show')->name('admin-transaction.show');
 | 
						|
                Route::get('admin-transaction/list-transaction','listTransaction')->name('admin-transaction.list-transaction');
 | 
						|
                Route::get('admin-transacion/transaction-tracking','transactionTracking')->name('admin.transaction-tracking');
 | 
						|
                Route::put('admin-transaction/accept-transaction','approveTransaction')->name('admin-transaction.accept-transaction');
 | 
						|
                Route::put('admin-transaction/deny-transaction','denyTransaction')->name('admin-transaction.deny-transaction');
 | 
						|
            });
 | 
						|
 | 
						|
            // Tampilan, approve atau deny dan hapus refund
 | 
						|
            Route::controller(AdminRefundController::class)->group(function(){
 | 
						|
                Route::get('admin-refund','index')->name('admin-refund.index');
 | 
						|
                Route::get('admin-refund/list-refund','listRefund')->name('admin-refund.list-refund');
 | 
						|
                Route::get('admin-refund/{id}','show')->name('admin-refund.show');
 | 
						|
                Route::put('admin-refund/approve-refund','approveRefund')->name('admin-refund.approve');
 | 
						|
                Route::put('admin-refund/deny-refund','denyRefund')->name('admin-refund.deny');
 | 
						|
            });
 | 
						|
 | 
						|
            // Tampilan, tambah, ubah dan hapus kebijakan persentase perusahaan
 | 
						|
            Route::controller(AdminSettingController::class)->group(function(){
 | 
						|
                Route::get('admin-setting','index')->name('admin-setting.index');
 | 
						|
                Route::get('admin-setting/list-setting','listSetting')->name('admin-setting.list-setting');
 | 
						|
                Route::post('admin-setting/store','store')->name('admin-setting.store');
 | 
						|
                Route::put('admin-setting/active/','activeSetting')->name('admin-setting.active-setting');
 | 
						|
            });
 | 
						|
 | 
						|
            Route::controller(AdminNotification::class)->group(function(){
 | 
						|
                Route::get('admin-notification','index')->name('admin-notification.index');
 | 
						|
                Route::get('admin-notification/show/{id}','show')->name('admin-notification.show');
 | 
						|
                Route::get('admin-notification/create','create')->name('admin-notification.create');
 | 
						|
                Route::get('admin-notification/list-notification','listNotification')->name('admin-notification.list-notification');
 | 
						|
                Route::get('admin-notification/list-user-for-show','listUserForShow')->name('admin-notification.list-user-for-show');
 | 
						|
                Route::get('admin-notification/list-user-for-create-edit','listUserForCreateEdit')->name('admin-notification.list-user-for-create-edit');
 | 
						|
                Route::get('admin-notification/select-all-user','selectAllUser')->name('admin-notification.select-all-user');
 | 
						|
                Route::get('admin-notification/edit','edit')->name('admin-notification.edit');
 | 
						|
                Route::get('admin-notification/update-new-notification','updateNewNotification')->name('admin-notification.update-new-notification');
 | 
						|
                Route::post('admin-notification/store','store')->name('admin-notification.store');
 | 
						|
                Route::post('admin-notification/update','update')->name('admin-notification.update');
 | 
						|
                Route::delete('admin-notification/delete','delete')->name('admin-notification.delete');
 | 
						|
                Route::delete('admin-notification/delete-all','deleteAll')->name('admin-notification.delete-all');
 | 
						|
            });
 | 
						|
        });
 | 
						|
    });
 | 
						|
 | 
						|
    Route::middleware(['user'])->group(function(){
 | 
						|
        Route::prefix('user')->group(function(){
 | 
						|
 | 
						|
            // Tampilan dashboard user beserta perhitungan
 | 
						|
            Route::controller(UserDashboardController::class)->group(function(){
 | 
						|
                Route::get('/','index')->name('user.index');
 | 
						|
                Route::get('user-dashboard/get-data-dashboard','getDataBySearch')->name('user.get-data-dashboard');
 | 
						|
            });
 | 
						|
 | 
						|
            // Tampilan, tambah dan hapus kontak
 | 
						|
            Route::controller(UserContactController::class)->group(function(){
 | 
						|
                Route::get('user-contact','index')->name('user-contact.index');
 | 
						|
                Route::get('user-contact/list-contact','listContact')->name('user-contact.list-contact');
 | 
						|
                Route::post('user-contact','store')->name('user-contact.store');
 | 
						|
                Route::delete('user-contact/delete','destroy')->name('user-contact.destroy');
 | 
						|
                Route::get('user-contact/get-user-contact','getContact')->name('user-contact.get'); // select2
 | 
						|
                Route::get('user-contact/cek-contact','cekEmail')->name('user-contact.email');
 | 
						|
                Route::get('user-contact/detailContact','detailContact')->name('user-contact.detail-contact');
 | 
						|
            });
 | 
						|
 | 
						|
            // Tampilan transaksi, bayar, update status pengiriman dan refund
 | 
						|
            Route::controller(UserTransactionController::class)->group(function(){
 | 
						|
                Route::get('transaction-tracking','transactionTracking')->name('user.transaction-tracking');
 | 
						|
                Route::get('user-transaction/detail-transaksi/{id}','show')->name('user-transaction.show');
 | 
						|
            });
 | 
						|
 | 
						|
            // Pembeli
 | 
						|
            Route::controller(PembeliController::class)->group(function(){
 | 
						|
                Route::get('user-pembeli','indexPembeli')->name('user-pembeli.index');
 | 
						|
                Route::get('user-pembeli/list-pembeli','listPembeli')->name('user-pembeli.list-pembeli');
 | 
						|
                Route::get('user-pembeli/tambah-transaksi','create')->name('user-pembeli.create');
 | 
						|
                Route::post('user-pembeli','store')->name('user-pembeli.store');
 | 
						|
                Route::put('user-pembeli/bayar-transaksi','payTransaction')->name('user-pembeli.pay');
 | 
						|
                Route::put('user-pembeli/batal-pembayaran','cancelPayment')->name('user-pembeli.cancel-payment');
 | 
						|
                Route::put('user-pembeli/batal-transaksi','cancelTransaction')->name('user-pembeli.cancel-transaction');
 | 
						|
                Route::put('user-pembeli/transaksi-pending', 'pendingTransaction')->name('user-pembeli.pending');
 | 
						|
                Route::put('user-pembeli/transaksi-error','onErrorTransaction')->name('user-pembeli.error');
 | 
						|
                Route::put('user-pembeli/transaksi-close','onCloseTransaction')->name('user-pembeli.close');
 | 
						|
                Route::put('user-pembeli/transaksi-selesai','finishTransaction')->name('user-pembeli.finish');
 | 
						|
            });
 | 
						|
 | 
						|
            // Penjual
 | 
						|
            Route::controller(PenjualController::class)->group(function(){
 | 
						|
                Route::get('user-penjual','indexPenjual')->name('user-penjual.index');
 | 
						|
                Route::get('user-penjual/list-penjual','listPenjual')->name('user-penjual.list-penjual');
 | 
						|
                Route::put('user-penjual/tolak-transaksi','denyTransaction')->name('user-penjual.deny');
 | 
						|
                Route::put('user-penjual/terima-transaksi','acceptTransaction')->name('user-penjual.accept');
 | 
						|
                Route::put('user-penjual/kirim-pesanan','sendingOrder')->name('user-penjual.sending');
 | 
						|
                Route::put('user-penjual/terima-uang','acceptResult')->name('user-penjual.accept-result');
 | 
						|
                Route::post('user-penjual/selesai-kirim-pesanan','sentOrder')->name('user-penjual.sent');
 | 
						|
            });
 | 
						|
 | 
						|
            // Tampilan refund
 | 
						|
            Route::controller(UserRefundController::class)->group(function(){
 | 
						|
                Route::get('user-refund','index')->name('user-refund.index');
 | 
						|
                Route::get('user-refund/list-refund','listRefund')->name('user-refund.list-refund');
 | 
						|
                Route::get('user-refund/ajukan-komplain/{id}','create')->name('user-refund.create');
 | 
						|
                Route::get('user-refund/detail-refund/{id}','show')->name('user-refund.show');
 | 
						|
                Route::post('user-refund','store')->name('user-refund.store');
 | 
						|
            });
 | 
						|
 | 
						|
            Route::controller(UserNotification::class)->group(function(){
 | 
						|
                Route::get('user-notification','index')->name('user-notification.index');
 | 
						|
                Route::get('user-notification/list-notification','listNotification')->name('user-notification.list-notification'); // untuk di index
 | 
						|
                Route::get('user-notification/detail-notification/{id}','show')->name('user-notifiaction.detail-notification');
 | 
						|
                Route::get('user-notification/latest-notification','latestNotification')->name('user-notification.latest-notification');
 | 
						|
                Route::get('user-notification/mark-all-as-read','markAllAsRead')->name('user.notification.mark-all-as-read');
 | 
						|
                Route::get('user-notification/update-new-notification','updateNewNotification')->name('user-notification.update-new-notification');
 | 
						|
                Route::get('user-notification/update-notification-to-admin','updateNotificationToAdmin')->name('user-notification.update-notification-to-admin');
 | 
						|
            });
 | 
						|
        });
 | 
						|
    });
 | 
						|
});
 |