count(); $totAssegnati = Territorio::assegnato()->count(); $totInReparto = Territorio::inReparto()->count(); // Coverage: returned territories per current theocratic year $territoriPercorsi = 0; if ($annoCorrente) { $territoriPercorsi = Assegnazione::where('anno_teocratico_id', $annoCorrente->id) ->whereNotNull('returned_at') ->distinct('territorio_id') ->count('territorio_id'); } // Monthly average $mediaPercorrenzaMensile = 0; if ($annoCorrente && $annoCorrente->mesi_trascorsi > 0) { $mediaPercorrenzaMensile = round($territoriPercorsi / $annoCorrente->mesi_trascorsi, 1); } // Campaign stats $campagnaStats = null; if ($campagnaAttiva) { $campagnaStats = [ 'descrizione' => $campagnaAttiva->descrizione, 'percentuale' => $campagnaAttiva->percentuale_percorrenza, 'fine' => $campagnaAttiva->end_date->format('d/m/Y'), ]; } // Quick lists $daAssegnare = Territorio::daAssegnare() ->with('zona', 'tipologia', 'ultimaAssegnazione') ->take(10) ->get(); $prioritari = Territorio::prioritari() ->with('zona', 'tipologia', 'ultimaAssegnazione') ->take(10) ->get(); $daRientrare = Territorio::daRientrare() ->with(['zona', 'assegnazioneCorrente.proclamatore']) ->take(10) ->get(); return view('livewire.home', [ 'congregazione' => $settings->congregazione_nome ?? 'TerManager2', 'annoCorrente' => $annoCorrente, 'totTerritoriAttivi' => $totTerritoriAttivi, 'totAssegnati' => $totAssegnati, 'totInReparto' => $totInReparto, 'territoriPercorsi' => $territoriPercorsi, 'mediaPercorrenzaMensile' => $mediaPercorrenzaMensile, 'campagnaStats' => $campagnaStats, 'daAssegnare' => $daAssegnare, 'prioritari' => $prioritari, 'daRientrare' => $daRientrare, ]); } }