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

View File

@@ -2,7 +2,7 @@
namespace App\Http\Controllers;
use App\Models\turmas;
use App\Models\Turma;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
@@ -11,21 +11,17 @@ class TurmasController extends Controller
public function index()
{
if (Auth::user()->id_escola == 0) {
$turmas = turmas::all();
} else {
$turmas = turmas::where('id_escola', Auth::user()->id_escola)->get();
}
$turmas = Turma::all();
return view('escolas.turmas', compact('turmas'));
}
public function createOrUpdate(Request $request)
{
$turma = turmas::where('nome', '=', $request->turma_nome)->count();
$turma = Turma::where('nome', '=', $request->turma_nome)->count();
if ($turma == 0) {
try {
$turma = new turmas();
$turma = new Turma();
$turma->id_escola = $request->id_escola;
$turma->nome = $request->turma_nome;
$turma->descricao = $request->turma_descricao;
@@ -37,7 +33,7 @@ class TurmasController extends Controller
}
} else {
try {
turmas::where('nome', $request->turma_nome)->update([
Turma::where('nome', $request->turma_nome)->update([
'nome' => $request->turma_nome,
'descricao' => $request->turma_descricao,
'id_escola' => $request->id_escola,
@@ -50,8 +46,31 @@ class TurmasController extends Controller
}
}
public function detalhes ($id) {
$turma = turmas::findOrFail($id);
return view('escolas.turmas_detalhes', compact('turma'));
public function detalhes($id)
{
$turma = Turma::findOrFail($id);
return view('escolas.Turma_detalhes', compact('turma'));
}
public function byEscola(Request $request, $escolaId)
{
// Se você tem multi-tenant e o usuário NÃO é super admin,
// é boa prática garantir que ele só consulte escola permitida.
$user = auth()->user();
if (!$user->is_super_admin) {
// se você usa pivot user_escolas:
$allowed = $user->escolas()->where('escolas.id', $escolaId)->exists();
if (!$allowed) {
abort(403);
}
}
$turmas = Turma::query()
->where('id_escola', $escolaId)
->orderBy('nome')
->get(['id', 'nome']);
return response()->json($turmas);
}
}