122 lines
3.4 KiB
PHP
122 lines
3.4 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\Auth;
|
|
use App\Models\DataLatih;
|
|
use App\Models\UjiData;
|
|
use App\Models\Prediksi;
|
|
use App\Models\User;
|
|
use App\Models\Kabupaten;
|
|
|
|
|
|
class AdminController extends Controller
|
|
{
|
|
// Menambahkan middleware auth agar hanya bisa diakses oleh user yang sudah login
|
|
public function __construct()
|
|
{
|
|
$this->middleware('auth');
|
|
}
|
|
|
|
public function dashboard()
|
|
{
|
|
$data = [
|
|
'merokok' => [/* data perilaku merokok */],
|
|
'rumah' => [/* data kondisi rumah */],
|
|
'imunisasi' => [/* data status imunisasi */]
|
|
];
|
|
|
|
// Data untuk peta
|
|
$locations = [
|
|
'rawan' => ['kecamatan' => 'A', 'color' => 'red'],
|
|
'berhati_hati' => ['kecamatan' => 'B', 'color' => 'blue']
|
|
];
|
|
|
|
return view('admin.dashboard', compact('data', 'locations'));
|
|
}
|
|
public function dataLatih()
|
|
{
|
|
$dataLatih = DataLatih::all(); // Ambil semua data latih dari database
|
|
return view('admin.data-latih', compact('dataLatih')); // Tampilkan ke view
|
|
}
|
|
// public function ujiData()
|
|
// {
|
|
// // Gunakan nilai sementara agar tidak error
|
|
// $probabilitas = 0.75;
|
|
// $mean = 12.5;
|
|
// $stdDeviasi = 3.2;
|
|
// $akurasi = 85.6;
|
|
|
|
// return view('admin.uji-data', compact('probabilitas', 'mean', 'stdDeviasi', 'akurasi'));
|
|
// }
|
|
public function prediksi()
|
|
{
|
|
$data_prediksi = Prediksi::all(); // Ambil semua data prediksi dari database
|
|
return view('admin.prediksi', compact('data_prediksi'));
|
|
}
|
|
public function hapusPrediksi($id)
|
|
{
|
|
$prediksi = Prediksi::find($id);
|
|
if ($prediksi) {
|
|
$prediksi->delete();
|
|
}
|
|
return redirect()->route('prediksi')->with('success', 'Data berhasil dihapus');
|
|
}
|
|
public function users() {
|
|
$users = User::all(); // Pastikan model `User` di-import
|
|
return view('admin.users', compact('users'));
|
|
}
|
|
|
|
public function store(Request $request)
|
|
{
|
|
$request->validate([
|
|
'name' => 'required|string|max:255',
|
|
'email' => 'required|email|unique:users',
|
|
'password' => 'required|min:6',
|
|
]);
|
|
|
|
User::create([
|
|
'name' => $request->name,
|
|
'email' => $request->email,
|
|
'password' => bcrypt($request->password),
|
|
]);
|
|
|
|
return redirect()->route('admin.users')->with('success', 'User berhasil ditambahkan.');
|
|
}
|
|
public function logout(Request $request)
|
|
{
|
|
Auth::guard('admin')->logout();
|
|
$request->session()->invalidate();
|
|
$request->session()->regenerateToken();
|
|
return redirect('/admin/login'); // Sesuaikan dengan halaman login Anda
|
|
}
|
|
public function edit($id)
|
|
{
|
|
$user = User::findOrFail($id); // Ambil data user berdasarkan ID
|
|
return view('admin.users.edit', compact('user'));
|
|
}
|
|
public function update(Request $request, $id)
|
|
{
|
|
$request->validate([
|
|
'name' => 'required|string|max:255',
|
|
'email' => 'required|email|unique:users,email,' . $id,
|
|
]);
|
|
|
|
$user = User::findOrFail($id);
|
|
$user->update($request->all());
|
|
|
|
return redirect()->route('admin.users.index')->with('success', 'Data user berhasil diperbarui.');
|
|
}
|
|
public function kabupaten()
|
|
{
|
|
$kabupatens = Kabupaten::all(); // Ambil semua data kabupaten
|
|
return view('admin.kabupaten.index', compact('kabupatens')); // Kirim data ke view
|
|
}
|
|
|
|
public function createKabupaten()
|
|
{
|
|
return view('admin.kabupaten.create'); // Menunjukkan view create dari kabupaten
|
|
}
|
|
|
|
} |