12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- <?php
-
- namespace App\Http\Controllers;
-
- use App\Models\Pelaporan;
- use App\Models\Tindakan;
- use Illuminate\Http\Request;
-
- class TindakanController extends Controller
- {
- public function index(Request $request)
- {
- $user = $request->user();
- if ($user->role == 'admin') {
- // Jika pengguna adalah admin, hitung total berdasarkan tindakan_id
- $laporan = Pelaporan::with('tindakan','user')->get();
-
- } elseif ($user->role == 'user') {
- // Jika pengguna adalah pengguna biasa, hitung riwayat pelaporan milik pengguna tersebut
- $riwayat = Pelaporan::where('user_id', $user->id)->get();
- // Menghitung total riwayat pelaporan yang dimiliki oleh pengguna
- $laporan = $riwayat->with('tindakan','user')->count();
- }
- $pelaporans = Pelaporan::query();
-
- if ($request->has('search')) {
- $pelaporans->where('judul', 'LIKE', '%' . $request->search . '%');
- }
-
- $pelaporans = $pelaporans->get();
-
- return view('admin.tindakan.index', compact('pelaporans', 'laporan'));
-
- }
-
- public function edit($id){
- $laporan = Pelaporan::with('tindakan','user')->get();
- $pelaporans = Pelaporan::find($id);
-
- $tindakans = Tindakan::all();
- return view('admin.tindakan.update', compact('pelaporans', 'tindakans','laporan'));
- }
-
- public function update(Request $request, $id){
- $request->validate([
- 'tindakan_id' => 'required', // Sesuaikan aturan validasi sesuai kebutuhan
- ]);
-
- $pelaporans = Pelaporan::find($id);
- // dd($request->all(), $pelaporans);
- $pelaporans->tindakan_id = $request->tindakan_id;
- $pelaporans->save();
-
- return redirect()->route('tindakan.index')->with('success', 'Tindakan berhasil diperbarui.');
- }
-
- public function show(Request $request, $id){
- $laporan = Pelaporan::with('tindakan','user')->get();
- $pelaporans = Pelaporan::find($id);
-
- $tindakans = Tindakan::all();
- return view('admin.tindakan.show', compact('pelaporans', 'tindakans','laporan'));
-
- }
-
- public function destroy($id)
- {
- $pelaporan = Pelaporan::find($id);
-
- if ($pelaporan) {
- $pelaporan->delete();
- return redirect()->route('tindakan.index')->with('success', 'Tindakan berhasil dihapus.');
- } else {
- return redirect()->route('tindakan.index')->with('error', 'Tindakan tidak ditemukan.');
- }
- }
-
-
- }
|