Files
Antonio Lopes dos Santos afec302c3e
All checks were successful
build-api-image / build (push) Successful in 51s
init commit
2026-08-04 16:52:02 -03:00

78 lines
1.6 KiB
PHP

<?php
namespace App\Models\Administracao;
use App\Models\Cadastro\SujeitoAtencao\Lotacao;
use App\Models\Model;
class Permissao extends Model
{
protected $table = 'administracao_permissao';
protected $fillable = [
'funcionalidade_id',
'crud_acao_id',
];
protected $hidden = [
'funcionalidade_id',
'crud_acao_id',
'created_at',
'updated_at',
'pivot',
];
protected $with = [
'crudAcao',
'endpointAcoes',
];
public function funcionalidade()
{
return $this->belongsTo(Funcionalidade::class);
}
public function crudAcao()
{
return $this->belongsTo(CrudAcao::class);
}
public function endpointAcoes()
{
return $this->hasMany(EndpointAcao::class);
}
public function papeis()
{
return $this->belongsToMany(
Papel::class,
'administracao_papel_permissao',
'permissao_id',
'papel_id'
)->withTimestamps();
}
public function lotacoes()
{
return $this->belongsToMany(
Lotacao::class,
'administracao_lotacao_permissao',
'permissao_id',
'lotacao_id'
)->withTimestamps();
}
public function gestores()
{
return $this
->belongsToMany(
Gestor::class,
'administracao_gestor_permissao',
'permissao_id',
'gestor_id'
)
->using(GestorPermissao::class)
->withTimestamps();
}
}