From b946c65d1e8e6974b82469882d5d6f618438bbd5 Mon Sep 17 00:00:00 2001 From: shahrzad011 Date: Mon, 17 Aug 2026 19:58:01 +0330 Subject: [PATCH] fix: update admin model --- app/Models/Admin.php | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/app/Models/Admin.php b/app/Models/Admin.php index 5657bf7..80de235 100644 --- a/app/Models/Admin.php +++ b/app/Models/Admin.php @@ -6,9 +6,11 @@ namespace App\Models; +use App\Enums\AdminStatus; use Carbon\Carbon; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; + //use Illuminate\Foundation\Auth\Admin as Authenticate; //use Illuminate\Foundation\Auth\Admin as Authenticate; @@ -50,4 +52,42 @@ class Admin extends User 'password', 'status', ]; + + public function permissions() + { + return $this->belongsToMany( + Permission::class, + 'admin_permission', + 'admin_id', + 'permission_id' + ); + } + + + /** + * بررسی دسترسی مدیر به ماژول مدیریت کاربران + * + * @param string $action view|edit|delete|password + */ + public function canManageUsers(string $action): bool + { + // مدیریت کاربران فقط برای مدیر فعال مجاز است + return $this->status == 1; + } + + + public function canManageTravelTypes(string $action): bool + { + return $this->status == 1; + } + + public function canManageFlights(string $action): bool + { + return $this->status == 1; + } + + public function canManageTours(string $action): bool + { + return $this->status == 1; + } }