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\alunos;
use App\Models\Aluno;
use App\Models\turmas;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
@@ -11,20 +11,45 @@ class AlunosController extends Controller
{
public function index()
{
$escolaId = Auth::user()->id_escola;
if ($escolaId == 0) {
$alunos = alunos::all();
} else {
$alunos = [];
$turmas = turmas::where('id_escola', $escolaId)->get();
foreach ($turmas as $turma) {
$alunosget = alunos::where('id_turma', $turma->id)->get();
$user = Auth()->user();
foreach ($alunosget as $alunosg) {
$alunos[] = $alunosg;
}
}
// coordenação/secretaria (ou quem tiver)
if ($user->can('alunos.ver_todos')) {
$alunos = Aluno::query()->get();
return view('escolas.alunos', compact('alunos'));
}
return view('escolas.alunos', compact('alunos'));
// aluno/responsável
if ($user->can('alunos.ver_meus')) {
$alunos = Aluno::query()
->where(function ($q) use ($user) {
$q->where('user_id', $user->id)
->orWhereHas('responsaveis', fn($r) => $r->where('users.id', $user->id));
})
->get();
return view('alunos.index', compact('alunos'));
}
abort(403);
}
public function updateOrCreate(Request $request)
{
$aluno = Aluno::updateOrCreate(
['cpf' => $request->cpf],
[
'nome' => $request->nome,
'id_turma' => $request->id_turma,
'id_escola' => $request->id_escola,
'data_nascimento' => $request->data_nascimento,
'data_inscricao' => $request->data_inscricao,
'cpf' => $request->cpf,
'user_id' => $request->user_id,
'responsavel_user_id' => $request->responsavel_user_id,
]
);
return redirect()->route('alunos')->with('success', 'Aluno Criado|Atualizado com sucesso.');
}
}