get(); $groupedKecelakaan = $kecelakaan->groupBy('id_jalan'); $data = []; $total_aman = 0; $total_rawan = 0; $total_sangat_rawan = 0; foreach ($jalan as $j) { $id_jalan = $j->id; $kejadian = $groupedKecelakaan->get($id_jalan, collect()); // Hitung jumlah kejadian berdasarkan tingkat kerawanan $jumlah_aman = $kejadian->where('tingkat_kerawanan', 'Aman')->count(); $jumlah_rawan = $kejadian->where('tingkat_kerawanan', 'Rawan')->count(); $jumlah_sangat_rawan = $kejadian->where('tingkat_kerawanan', 'Sangat Rawan')->count(); // Tentukan status kerawanan berdasarkan jumlah kejadian $jumlah_status = [ 'Sangat Rawan' => $jumlah_sangat_rawan, 'Rawan' => $jumlah_rawan, 'Aman' => $jumlah_aman, ]; // Temukan nilai maksimum dari array $max_value = max($jumlah_status); // Temukan status yang sesuai dengan nilai maksimum $status_kerawanan = array_search($max_value, $jumlah_status); // Update the total counts based on the final status_kerawanan if ($status_kerawanan == 'Aman') { $total_aman++; } elseif ($status_kerawanan == 'Rawan') { $total_rawan++; } elseif ($status_kerawanan == 'Sangat Rawan') { $total_sangat_rawan++; } // Tambahkan data ke array data $data[] = [ 'nama_jalan' => $j->nama_jalan, 'status_kerawanan' => $status_kerawanan ]; } return view('users.pemetaan.index', [ 'data' => $data, 'jalan' => $jalan, 'kecelakaan' => $kecelakaan, 'total_aman' => $total_aman, 'total_rawan' => $total_rawan, 'total_sangat_rawan' => $total_sangat_rawan ]); } //detail public function detail($id) { $data = Kecelakaan::where('id', $id)->with(['rules', 'jalan'])->first(); //return to view return view('users.pemetaan.detail', [ 'data' => $data, ]); } }