@extends('layouts.app') @section('title', 'Dashboard') @section('content')
Welcome back, {{ Auth::user()->name }} • {{ now()->format('l, F j, Y') }}
{{ number_format($stats['total_incidents']) }}
{{ $stats['open_incidents'] }} open
{{ number_format($stats['total_toolbox_talks']) }}
{{ $stats['completed_talks'] }} completed
{{ number_format($stats['total_attendances']) }}
{{ $stats['total_feedback'] }} feedback
{{ number_format($stats['total_communications']) }}
{{ $stats['active_users'] }} active users
{{ number_format($stats['total_risk_assessments']) }}
{{ $stats['high_risk_assessments'] }} high risk
{{ number_format($stats['total_jsas']) }}
{{ $stats['approved_jsas'] }} approved
{{ number_format($stats['total_training_sessions']) }}
{{ $stats['upcoming_sessions'] }} upcoming
{{ number_format($stats['total_ppe_items']) }}
{{ $stats['low_stock_ppe'] }} low stock
{{ number_format($stats['total_training_needs']) }}
{{ $stats['pending_training_needs'] }} pending
{{ number_format($stats['total_certificates']) }}
{{ $stats['expiring_certificates'] }} expiring
{{ number_format($stats['active_ppe_issuances']) }}
{{ $stats['expiring_ppe'] }} expiring
Safety Score
{{ $stats['safety_score'] }}%
Days Without Incident
{{ number_format($stats['days_without_incident']) }}
@php $lastIncident = \App\Models\Incident::where('company_id', Auth::user()->company_id) ->orderBy('incident_date', 'desc') ->first(); @endphp @if($lastIncident) Last incident: {{ $lastIncident->incident_date->format('M d, Y') }} @else No incidents recorded @endif
Talk Completion Rate
{{ $stats['total_toolbox_talks'] > 0 ? number_format(($stats['completed_talks'] / $stats['total_toolbox_talks']) * 100, 1) : 0 }}%
{{ $stats['completed_talks'] }} of {{ $stats['total_toolbox_talks'] }} talks completed
{{ $incident->reference_number }}
No recent incidents
Report an incident{{ $talk->reference_number ?? 'N/A' }}
No recent toolbox talks
Schedule a talk{{ $assessment->reference_number }}
No recent risk assessments
{{ $capa->reference_number }}
No recent CAPAs