diff --git a/app/Http/Controllers/PenggunaController.php b/app/Http/Controllers/PenggunaController.php index 6242af8..ef584c1 100644 --- a/app/Http/Controllers/PenggunaController.php +++ b/app/Http/Controllers/PenggunaController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers; +use App\Models\KehadiranKtm; use App\Models\Sppm\Dun; use App\Models\User; use Illuminate\Http\Request; @@ -65,4 +66,21 @@ class PenggunaController extends Controller return redirect()->route('pengguna.index')->with('status', 'Pengguna baharu berjaya didaftarkan.'); } + + public function destroy(Request $request, User $pengguna) + { + if ($pengguna->id === $request->user()->id) { + return back()->withErrors(['pengguna' => 'Anda tidak boleh memadam akaun anda sendiri.']); + } + + if (KehadiranKtm::where('dicatat_oleh_user_id', $pengguna->id)->exists()) { + return back()->withErrors([ + 'pengguna' => "Pengguna {$pengguna->name} tidak boleh dipadam kerana telah mencatat rekod kehadiran.", + ]); + } + + $pengguna->delete(); + + return redirect()->route('pengguna.index')->with('status', "Pengguna {$pengguna->name} telah dipadam."); + } } diff --git a/resources/views/pengguna/index.blade.php b/resources/views/pengguna/index.blade.php index 7e67b3e..cbaccbb 100644 --- a/resources/views/pengguna/index.blade.php +++ b/resources/views/pengguna/index.blade.php @@ -10,6 +10,10 @@ + @if ($errors->any()) +
Tiada pengguna lagi.
@@ -23,6 +27,7 @@