feat: implement comprehensive dashboard controller and modular administrative and project management interfaces
This commit is contained in:
@@ -246,6 +246,14 @@ class ContractorController extends Controller
|
||||
|
||||
public function approveInvoice(ContractorInvoice $invoice)
|
||||
{
|
||||
$user = auth()->user();
|
||||
$isHigherUp = $user->user_type === 'admin' ||
|
||||
$user->roles()->whereIn('name', ['Super Admin', 'admin', 'Main Contractor Admin'])->exists();
|
||||
|
||||
if (!$isHigherUp) {
|
||||
return back()->with('error', 'Unauthorized. Only Main Contractor Admin or Super Admin can approve subcontractor invoices.');
|
||||
}
|
||||
|
||||
try {
|
||||
$invoice->transitionTo(InvoiceStatus::Approved);
|
||||
} catch (\InvalidArgumentException $e) {
|
||||
|
||||
Reference in New Issue
Block a user