72 lines
4.6 KiB
PHP
72 lines
4.6 KiB
PHP
<?php
|
|
|
|
use App\Http\Controllers\Admin\Finance\CashAccountController;
|
|
use App\Http\Controllers\Admin\Finance\EmployeeAdvanceController;
|
|
use App\Http\Controllers\Admin\Finance\ExpenseController;
|
|
use App\Http\Controllers\Admin\Finance\PayrollAdjustmentController;
|
|
use App\Http\Controllers\Admin\Finance\PayrollController;
|
|
use App\Http\Controllers\Admin\Finance\PayrollPeriodController;
|
|
use App\Http\Controllers\Admin\Master\CategoryController;
|
|
use App\Http\Controllers\Admin\Master\CustomerController;
|
|
use App\Http\Controllers\Admin\Master\ProductController;
|
|
use App\Http\Controllers\Admin\Master\SupplierController;
|
|
use App\Http\Controllers\Admin\HR\EmployeeController;
|
|
use App\Http\Controllers\Admin\HR\LeaveRequestController;
|
|
use Illuminate\Support\Facades\Route;
|
|
|
|
Route::get('/', fn () => inertia('welcome', [
|
|
'seo' => [
|
|
'title' => 'DST Collection - DST Punya Gaya',
|
|
'description' => 'DST Collection - DST Punya Gaya. Toko fashion terpercaya dengan koleksi terlengkap.',
|
|
'image' => url('/assets/logo.png'),
|
|
'url' => url('/'),
|
|
],
|
|
]))->name('home');
|
|
|
|
Route::middleware(['auth', 'verified'])->group(function () {
|
|
Route::inertia('dashboard', 'dashboard')->name('dashboard');
|
|
|
|
Route::prefix('admin/master')->name('admin.master.')->group(function () {
|
|
Route::resource('categories', CategoryController::class)->except(['show', 'create', 'edit']);
|
|
Route::resource('suppliers', SupplierController::class)->except(['show', 'create', 'edit']);
|
|
Route::resource('customers', CustomerController::class)->except(['show', 'create', 'edit']);
|
|
});
|
|
|
|
Route::prefix('admin/finance')->name('admin.finance.')->group(function () {
|
|
Route::get('cash-accounts', [CashAccountController::class, 'index'])->name('cash-accounts.index');
|
|
Route::post('cash-accounts/deposit', [CashAccountController::class, 'deposit'])->name('cash-accounts.deposit');
|
|
Route::post('cash-accounts/withdrawal', [CashAccountController::class, 'withdrawal'])->name('cash-accounts.withdrawal');
|
|
Route::put('cash-accounts/transactions/{transaction}', [CashAccountController::class, 'update'])->name('cash-accounts.transactions.update');
|
|
Route::delete('cash-accounts/transactions/{transaction}', [CashAccountController::class, 'destroy'])->name('cash-accounts.transactions.destroy');
|
|
|
|
Route::resource('expenses', ExpenseController::class)->except(['show', 'create', 'edit']);
|
|
|
|
Route::resource('employee-advances', EmployeeAdvanceController::class)->except(['show', 'create', 'edit']);
|
|
Route::post('employee-advances/{employeeAdvance}/approve', [EmployeeAdvanceController::class, 'approve'])->name('employee-advances.approve');
|
|
Route::post('employee-advances/{employeeAdvance}/pay', [EmployeeAdvanceController::class, 'pay'])->name('employee-advances.pay');
|
|
|
|
Route::get('payroll-periods/current', [PayrollPeriodController::class, 'current'])->name('payroll-periods.current');
|
|
Route::resource('payroll-periods', PayrollPeriodController::class)->only(['index', 'show']);
|
|
Route::post('payroll-periods/{payrollPeriod}/close', [PayrollPeriodController::class, 'close'])->name('payroll-periods.close');
|
|
Route::post('payroll-periods/{payrollPeriod}/reopen', [PayrollPeriodController::class, 'reopen'])->name('payroll-periods.reopen');
|
|
|
|
Route::post('payrolls/{payroll}/pay', [PayrollController::class, 'pay'])->name('payrolls.pay');
|
|
Route::post('payrolls/{payroll}/cancel', [PayrollController::class, 'cancel'])->name('payrolls.cancel');
|
|
|
|
Route::post('payrolls/{payroll}/adjustments', [PayrollAdjustmentController::class, 'store'])->name('payrolls.adjustments.store');
|
|
Route::delete('payroll-adjustments/{payrollAdjustment}', [PayrollAdjustmentController::class, 'destroy'])->name('payroll-adjustments.destroy');
|
|
});
|
|
|
|
Route::prefix('admin/hr')->name('admin.hr.')->group(function () {
|
|
Route::resource('employees', EmployeeController::class)->except(['show'])->parameters(['employees' => 'user']);
|
|
Route::post('employees/{user}/toggle-active', [EmployeeController::class, 'toggleActive'])->name('employees.toggle-active');
|
|
Route::post('employees/{user}/reset-password', [EmployeeController::class, 'resetPassword'])->name('employees.reset-password');
|
|
|
|
Route::resource('leave-requests', LeaveRequestController::class)->except(['show', 'create', 'edit']);
|
|
Route::post('leave-requests/{leaveRequest}/approve', [LeaveRequestController::class, 'approve'])->name('leave-requests.approve');
|
|
Route::post('leave-requests/{leaveRequest}/reject', [LeaveRequestController::class, 'reject'])->name('leave-requests.reject');
|
|
});
|
|
});
|
|
|
|
require __DIR__.'/settings.php';
|