group(function () { // Invoices Route::get('finance', [FinanceController::class, 'index'])->name('finance.index'); Route::get('finance/create', [FinanceController::class, 'create'])->name('finance.create'); Route::post('finance', [FinanceController::class, 'store'])->name('finance.store'); Route::get('finance/{invoice}', [FinanceController::class, 'show'])->name('finance.show'); // Invoice lifecycle Route::patch('finance/{invoice}/submit', [FinanceController::class, 'submit'])->name('finance.submit'); Route::patch('finance/{invoice}/approve', [FinanceController::class, 'approve'])->name('finance.approve'); Route::patch('finance/{invoice}/reject', [FinanceController::class, 'reject'])->name('finance.reject'); Route::patch('finance/{invoice}/send', [FinanceController::class, 'send'])->name('finance.send'); Route::post('finance/{invoice}/payment', [FinanceController::class, 'recordPayment'])->name('finance.payment'); // Retention Route::get('retention', [FinanceController::class, 'retention'])->name('retention.index'); });