feat: enhance module RBAC permissions, financial billing workflows, task evidence uploading, and role analytics
Some checks failed
Tests / PHP 8.3 (push) Has been cancelled
Tests / PHP 8.4 (push) Has been cancelled
Tests / PHP 8.5 (push) Has been cancelled

This commit is contained in:
Ajjj
2026-08-13 18:46:26 +08:00
parent 10eb7be033
commit ccbd23d474
40 changed files with 2324 additions and 353 deletions

View File

@@ -122,9 +122,21 @@ class ApprovalController extends Controller
$totalCost = $materialsCost + $laborCost + $equipmentCost;
}
$chainNotes = $approvalChain->notes
?? $approvalChain->steps->whereNotNull('notes')->filter(fn ($s) => trim($s->notes) !== '')->last()?->notes
?? $approvalChain->approvable?->notes
?? $approvalChain->approvable?->description
?? $approvalChain->approvable?->remarks
?? $approvalChain->approvable?->reason
?? $approvalChain->approvable?->justification;
if (empty($approvalChain->notes) && $chainNotes) {
$approvalChain->notes = $chainNotes;
}
$breakdownData = [
'document_number' => $approvalChain->approvable->document_number
?? $approvalChain->approvable->po_number
'document_number' => $approvalChain->approvable?->document_number
?? $approvalChain->approvable?->po_number
?? ($approvalChain->approvable instanceof \Modules\FinancialManagement\Models\FinancialInvoice ? $approvalChain->approvable->invoice_number : null)
?? ($approvalChain->approvable instanceof \Modules\ProjectManagement\Models\Project ? $approvalChain->approvable->code : null),
'total_cost' => $approvalChain->approvable instanceof \Modules\FinancialManagement\Models\FinancialInvoice
@@ -133,9 +145,7 @@ class ApprovalController extends Controller
'retention_amount' => $approvalChain->approvable instanceof \Modules\FinancialManagement\Models\FinancialInvoice
? $approvalChain->approvable->retention_amount
: null,
'notes' => $approvalChain->approvable->notes
?? ($approvalChain->approvable instanceof \Modules\FinancialManagement\Models\FinancialInvoice ? $approvalChain->approvable->notes : null)
?? ($approvalChain->approvable instanceof \Modules\ProjectManagement\Models\Project ? $approvalChain->approvable->description : null),
'notes' => $chainNotes ?? 'None',
];
}