@php use Spatie\Activitylog\Models\Activity; use App\Models\SubmissionReviews; // Get all review IDs related to the submission $reviewIds = \App\Models\SubmissionReviews::where('submission_id', $record->submission_id)->pluck('id'); // Fetch activity logs for those reviews $activities = Activity::where('subject_type', SubmissionReviews::class) ->whereIn('subject_id', $reviewIds) ->latest() ->get() // Filter to only keep unique changes based on description + properties ->unique(function ($activity) { return $activity->description . json_encode($activity->properties->toArray()); }); @endphp @foreach ($activities as $activity) @php $review = $activity->subject; $reviewerName = $review?->reviewer?->name ?? 'Unknown'; $reviewerRole = $review?->reviewer?->role ?? 'Unknown Role'; $reviewStage = $review?->stage ?? 'N/A'; $reviewStatus = $review?->status ?? 'N/A'; $reviewRemarks = $review?->remarks ?? null; @endphp

{{ $activity->description }}

{{ $activity->created_at->diffForHumans() }}

Reviewer: {{ $reviewerName }} ({{ $reviewerRole }})

Stage: {{ ucfirst($reviewStage) }}

Status: {{ ucfirst($reviewStatus) }}

@if ($reviewRemarks)

Remarks: {{ $reviewRemarks }}

@endif
@endforeach