get(); return view('pasien.index', compact('pasien')); } /** * Tampilkan form tambah pasien */ public function create() { return view('pasien.create'); } /** * Simpan data pasien baru */ public function store(Request $request) { $validated = $request->validate([ 'nama' => 'required|string|max:255', 'umur' => 'required|integer|min:1', 'jenis_kelamin' => 'required|in:Laki-laki,Perempuan', 'berat_badan' => 'required|numeric|min:1', 'tinggi_badan' => 'required|numeric|min:1', 'gejala' => 'required|array|min:1', 'gejala.*' => 'in:nyeri lambung,mual,asam lambung naik', 'aktivitas_harian' => 'required|string', ]); // 🔥 ubah array gejala jadi string $validated['gejala'] = implode(',', $validated['gejala']); Pasien::create($validated); return redirect()->route('pasien.index') ->with('success', 'Data pasien berhasil ditambahkan.'); } /** * Tampilkan form edit pasien */ public function edit($id) { $pasien = Pasien::findOrFail($id); return view('pasien.edit', compact('pasien')); } /** * Update data pasien */ public function update(Request $request, $id) { $validated = $request->validate([ 'nama' => 'required|string|max:255', 'umur' => 'required|integer|min:1', 'jenis_kelamin' => 'required|in:Laki-laki,Perempuan', 'berat_badan' => 'required|numeric|min:1', 'tinggi_badan' => 'required|numeric|min:1', 'gejala' => 'required|array|min:1', 'gejala.*' => 'in:nyeri lambung,mual,asam lambung naik', 'aktivitas_harian' => 'required|string', ]); // 🔥 ubah array gejala jadi string $validated['gejala'] = implode(',', $validated['gejala']); $pasien = Pasien::findOrFail($id); $pasien->update($validated); return redirect()->route('pasien.index') ->with('success', 'Data pasien berhasil diperbarui.'); } /** * Hapus data pasien */ public function destroy($id) { $pasien = Pasien::findOrFail($id); $pasien->delete(); return redirect()->route('pasien.index') ->with('success', 'Data pasien berhasil dihapus.'); } }