user(); // Sem usuário logado: não filtra if (!$user) { return; } // Super admin: vê tudo (não filtra por escola) if ($user->is_super_admin) { return; } // Usuário comum: filtra pela escola atual if ($user->current_escola_id) { $builder->where('id_escola', $user->current_escola_id); } }); static::creating(function ($model) { $user = auth()->user(); if (!$user) { return; } // Super admin: não força id_escola automaticamente if ($user->is_super_admin) { return; } // Se não veio id_escola, seta pela escola atual do usuário if (!$model->id_escola) { $model->id_escola = $user->current_escola_id; } }); } }