@extends('admin.admin_dashboard') @section('admin') @php use App\Support\PlanningPermissions; $isEdit = $requisition->exists; $action = $isEdit ? route('planning.requisitions.update', $requisition) : route('planning.requisitions.store'); $existingLines = old('lines', $requisition->exists ? $requisition->lines->map(fn ($l) => [ 'budget_item_id' => $l->budget_item_id, 'quantity_requested' => $l->quantity_requested, 'amount_requested' => $l->amount_requested, 'attachment' => $l->attachment, 'attachment_name' => $l->attachmentBasename(), ])->toArray() : []); @endphp
Requisitions {{ $isEdit ? $requisition->reference : 'Create' }}
1. Workplan & purpose
2. Budget lines & quotations
3. Review & submit
@if($errors->any())
Could not save the requisition:
    @foreach($errors->all() as $error)
  • {{ $error }}
  • @endforeach
@endif
@csrf @if($isEdit) @method('PUT') @endif
@if($requisition->isDraft()) Draft — auto-saves while you work @endif
{{-- Step 1 --}}
@if($workplans->isEmpty())
No approved workplans are assigned to you yet. Ask your department planner to assign you to activities on the workplan.
@endif
{{-- Step 2 --}}

Select budget items, enter amounts carefully, and attach a PDF quotation for each line.

{{ count($budgetItemsJson) }} items available
@if(empty($workplanId))
Select a workplan in step 1 to load budget items.
@endif
{{ $budgetEmptyMessage ?? '' }}
Selected lines
0 lines

Click budget items above to add lines.

Total requested
UGX 0.00
{{-- Step 3 --}}
Total requested: UGX 0.00
@if(auth()->user()->isSuperAdmin() && ($notifyCandidates ?? collect())->isNotEmpty())

Choose who receives the first approval email. Leave blank to use the normal route (line manager → HOD → senior).

@else
Approval route: Line manager → Head of department → Senior approval. Approvers are notified by email at each stage.
@endif

Based on your reporting line and department.

@foreach($approvalChain as $stage)
{{ $stage['label'] }}
@if(!empty($stage['subtitle']))
{{ $stage['subtitle'] }}
@endif @forelse($stage['users'] as $approver)
{{ $approver->name }}
{{ $approver->email }}
@empty
Not assigned — set up in org chart
@endforelse
@endforeach
@if($workplan ?? null)
{{ $workplan->title }}
{{ $workplan->department->name ?? '' }} · FY {{ $workplan->financial_year }}
@endif @can('role_permissions.view')

Users need these permissions under the Planning group to submit requisitions:

    @foreach(PlanningPermissions::requisitionStaffBundle() as $perm)
  • {{ PlanningPermissions::labelFor($perm) }}
  • @endforeach
Manage role permissions
@endcan
@endsection