atualizacao

This commit is contained in:
2026-02-22 18:16:47 +00:00
parent 7136d3e061
commit 05b7d0a82b
45 changed files with 3881 additions and 246 deletions

66
app/Models/Escola.php Normal file
View File

@@ -0,0 +1,66 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Facades\Auth;
class Escola extends Model
{
protected $casts = [
'endereco' => 'array',
];
protected $fillable = [
'cnpj',
'endereco',
'nome',
];
/*
|--------------------------------------------------------------------------
| GLOBAL SCOPE MULTI-TENANT
|--------------------------------------------------------------------------
*/
protected static function booted()
{
static::addGlobalScope('user_escolas', function (Builder $builder) {
if (Auth::check() && !Auth::user()->is_super_admin) {
$builder->whereIn('id', function ($query) {
$query->select('escola_id')
->from('user_escolas')
->where('user_id', Auth::id());
});
}
});
}
/*
|--------------------------------------------------------------------------
| RELACIONAMENTOS
|--------------------------------------------------------------------------
*/
public function turmas()
{
return $this->hasMany(Turma::class, 'id_escola');
}
public function users()
{
return $this->belongsToMany(
User::class,
'user_escolas',
'escola_id',
'user_id'
);
}
}