Files
star-cloud/app/Models/System/Role.php
sky121113 fc79148879 [FEAT] 實作角色權限分類、租戶角控管理與介面多語系優化
1. [FEAT] 權限劃分為「系統層級」與「客戶層級」,並在後端強制過濾跨權限分配。
2. [FEAT] 整合選單權限至主選單層級 (基本設定、權限設定),簡化角色管理 UI。
3. [STYLE] 側邊欄優化:補齊多語系翻譯,並為基本設定子選單增加視覺圖示。
4. [REFACTOR] 更新 RoleSeeder,將 tenant-admin 重新分類為客戶層級角色。
2026-03-17 16:53:28 +08:00

35 lines
723 B
PHP

<?php
namespace App\Models\System;
use Spatie\Permission\Models\Role as SpatieRole;
class Role extends SpatieRole
{
protected $fillable = [
'name',
'guard_name',
'company_id',
'is_system',
];
/**
* Get the company that owns the role.
*/
public function company()
{
return $this->belongsTo(Company::class);
}
/**
* Scope a query to only include roles for a specific company or system roles.
*/
public function scopeForCompany($query, $company_id)
{
return $query->where(function($q) use ($company_id) {
$q->where('company_id', $company_id)
->orWhereNull('company_id');
});
}
}