diff --git a/app/Http/Controllers/Admin/MstPenggunaController.php b/app/Http/Controllers/Admin/MstPenggunaController.php index dd15aba..53763ef 100644 --- a/app/Http/Controllers/Admin/MstPenggunaController.php +++ b/app/Http/Controllers/Admin/MstPenggunaController.php @@ -11,6 +11,8 @@ use App\Http\Controllers\Controller; use Illuminate\Support\Facades\Auth; use Str; use Hash; +use illuminate\Support\Facades\DB; +use PhpParser\Node\Expr\Exit_; class MstPenggunaController extends Controller { @@ -169,6 +171,64 @@ class MstPenggunaController extends Controller ->with('success','Lock upload data sudah diubah!'); } + public function lockTambahData($userId="", $reset=0, Request $req) + { + $updateValue = [ + "lock_tambah_data"=>$reset == 0 ? 1:0, + "lock_upload_by"=>Auth::user()->id + ]; + + + if (empty($userId)) + { + User::query()->update($updateValue); + }else{ + User::where(["id"=>$userId])->update($updateValue); + } + + return redirect()->route('users.index') + ->with('success','Lock Tambah data sudah diubah!'); + } + + + public function lockUbahData($userId="", $reset=0, Request $req) + { + $updateValue = [ + "lock_ubah_data"=>$reset == 0 ? 1:0, + "lock_upload_by"=>Auth::user()->id + ]; + + if (empty($userId)) + { + User::query()->update($updateValue); + }else{ + User::where(["id"=>$userId])->update($updateValue); + } + + return redirect()->route('users.index') + ->with('success','Lock Ubah data sudah diubah!'); + } + + + public function lockHapusData($userId="", $reset=0, Request $req) + { + $updateValue = [ + "lock_hapus_data"=>$reset == 0 ? 1:0, + "lock_upload_by"=>Auth::user()->id + ]; + + if (empty($userId)) + { + User::query()->update($updateValue); + }else{ + User::where(["id"=>$userId])->update($updateValue); + } + + return redirect()->route('users.index') + ->with('success','Lock Hapus data sudah diubah!'); + } + + public function resetPass(User $user) { $random = Str::random(8); diff --git a/app/Http/Controllers/AuthController.php b/app/Http/Controllers/AuthController.php index a85b339..bdfb04c 100644 --- a/app/Http/Controllers/AuthController.php +++ b/app/Http/Controllers/AuthController.php @@ -9,6 +9,7 @@ use Hash; use Session; use App\Models\User; use App\Models\RoleUser; +use Illuminate\Contracts\Session\Session as SessionSession; class AuthController extends Controller { @@ -50,6 +51,12 @@ class AuthController extends Controller Auth::attempt($data); if (Auth::check()) { + if (Auth::user()->status_lock == 1) + { + Auth::logout(); + Session::flash('eror', 'Data Terkunci Silahkan Hubungi Admin'); + return redirect()->route('login'); + } // True sekalian session field di users nanti bisa dipanggil via Auth // Login Success $taValue = []; diff --git a/app/Http/Controllers/RealisasiBelanjaController.php b/app/Http/Controllers/RealisasiBelanjaController.php index d1db35a..9e447e4 100644 --- a/app/Http/Controllers/RealisasiBelanjaController.php +++ b/app/Http/Controllers/RealisasiBelanjaController.php @@ -45,6 +45,9 @@ class RealisasiBelanjaController extends Controller public function create(Request $request) { + if (Auth::user()->lock_tambah_data == 1){ + abort(403, 'Tidak diperbolehkan menambah data oleh admin!'); + } $get = $request->all(); $rskExists = BelanjaRealisasi::where("kode_rsk",$get["rsk"])->count(); if ($rskExists > 0) @@ -56,7 +59,9 @@ class RealisasiBelanjaController extends Controller $VwDpaRsk = VwDpaRsk::where("I_ID",$get["rsk"])->first(); $unitSatuan = UnitSatuan::orderBy("id")->get(); + return view('realisasi_belanja.create', compact("unitSatuan","VwDpaRsk")); + } public function createFromRsk() @@ -203,6 +208,9 @@ class RealisasiBelanjaController extends Controller public function update(Request $request, BelanjaRealisasi $realisasi_belanja) { + if (Auth::user()->lock_ubah_data == 1){ + abort(403, 'Tidak diperbolehkan mengupdate data oleh admin!'); + } $request->validate([ "jenis_dana"=>"required", "sub_jenis_dana"=>"required", @@ -429,6 +437,9 @@ class RealisasiBelanjaController extends Controller public function destroy(BelanjaRealisasi $realisasi_belanja) { + if (Auth::user()->lock_hapus_data == 1){ + abort(403, 'Tidak diperbolehkan menghapus data oleh admin!'); + } try{ DB::beginTransaction(); $realisasi_belanja->delete(); diff --git a/app/Models/User.php b/app/Models/User.php index 6c444d3..c399790 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -26,6 +26,9 @@ class User extends Authenticatable 'password', 'role_name', 'is_lock_upload', + 'lock_tambah_data', + 'lock_ubah_data', + 'lock_hapus_data', 'lock_upload_time', 'lock_upload_by', 'wilayah' diff --git a/resources/views/admin/mst_pengguna/index.blade.php b/resources/views/admin/mst_pengguna/index.blade.php index 461ccca..904dc67 100644 --- a/resources/views/admin/mst_pengguna/index.blade.php +++ b/resources/views/admin/mst_pengguna/index.blade.php @@ -19,10 +19,17 @@