Aula Larafood - 15 ACL - 05 - ACL no Laravel - Aplicar Restrições
Professor, fiz todo o modulo mas fiquei na dúvida de como implementar o super admini para que ele possa ver os dados de todas as empresas cadastradas, conseguiria me orientar de como faria isso ou se tem em alguma aula?
Abçs
RP
Olá, Rodrigo! Tudo bem?
Desculpas demorar te responder, tinha muitas features aqui para resolver.
Na trait que aplica a query (filtro de tenant_id), vc pode verificar se o usuário é super admin, se for, não aplica. Aplica esse scope apenas se for super admin: https://github.com/especializati/larafood/blob/master/app/Tenant/Scopes/TenantScope.php#L23
Pegou a ideia?
Professor, tudo bem!
Eu fiz assim, veja se ficou bom? Funcionou, mas não sei se foi a melhor pratica.
Boa amigo, isso mesmo a ideia, uma pequena refatoração com clean code:
public function apply(Builder $builder, Model $model): void
{
if (app(ManagerEmpresa::class)->isAdmin()) {
$builder->where('empresa_id', '<>', 0);
return;
}
$builder->where('empresa_id', app(ManagerEmpresa::class)->getEmpresaIdentify());
}
Precisa estar logado para conseguir responder a este ticket!
Clique Aqui Para Entrar!