0
This below is my controller.
public function atletaExport(AtletaModalidadeRequest $request){
$alunosModalidade = $this->alunoequipes->alunosModalidadeFase($request->get('modalidade'),$request->get('fase1'), $request->get('municipio'),
$request->get('regional'), $request->get('sexo'),
$request->get('categoria'))->get();
//dd($alunosModalidade);
\Excel::create('AtletasModalidades', function ($excel) use ($alunosModalidade) {
$excel->sheet('New sheet', function ($sheet) use ($alunosModalidade) {
$sheet->loadView('relatorios.atletaexport')->with('alunosModalidade', $$alunosModalidade);
});
})->download('xlsx');
}
Below where he collects the information
public function atletasModalidade(AtletaModalidadeRequest $request)
{
$v['title'] = 'Atletas por Modalidade';
if (Auth::user()->perfil_id == Perfil::ESCOLA) {
Notification::error('Acesso não permitido.');
return back()->withInput();
}
$fase_id = $request->input('fase1');
$municipio_id = $request->input('municipio');
$regional_id = $request->input('regional');
$modalidade_id = $request->input('modalidade');
$v['sexo'] = $request->input('sexo');
$v['categoria'] = $request->input('categoria');
$v['fase'] = $this->fase->find($fase_id);
$v['local'] = null;
$v['municipio'] = false;
$v['regional'] = false;
$modalidade = $this->modalidade->find($modalidade_id);
$v['modalidade'] = $modalidade;
if($municipio_id != '') {
$v['local'] = $this->municipio->find($municipio_id);
$v['municipio'] = true;
}
if($regional_id != '') {
//$v['local'] = $this->regional->find($regional_id);
$v['regional'] = true;
}
$v['municipio_id'] = $municipio_id;
$v['regional_id'] = $regional_id;
return view('relatorios.atletasModalidade', $v);
}
here is my query
public function alunosModalidadeFase ($modalidade_id, $fase_id,$municipio,$regional,$sexo, $categoria)
{
$alunos = $this->join('equipes','equipes.id','=','aluno_equipe.equipe_id')
->join('escolas','escolas.id','=','equipes.escola_id')
->join('alunos','alunos.id','=','aluno_equipe.aluno_id')
->join('municipios','municipios.id','=','escolas.municipio_id')
->join('dirigente_fase', 'dirigente_fase.id','=','equipes.tecnico_id')
->leftJoin('dirigentes', 'dirigentes.id', '=','dirigente_fase.dirigente_id')
->join('fases', 'fases.id', '=', 'equipes.fase_id')
->where('equipes.modalidade_id','=',$modalidade_id)
->where('fases.id','=',$fase_id);
if($sexo)
{
$alunos = $alunos->where('equipes.sexo','=',$sexo);
}
if($categoria)
{
$alunos = $alunos->where('equipes.categoria','=',$categoria);
}
if($municipio)
{
$alunos = $alunos->where('escolas.municipio_id','=',$municipio);
}
if($regional)
{
$alunos = $alunos->where('municipios.regional_id','=',$regional);
}
$alunos = $alunos->select('alunos.nome','alunos.data_nascimento','alunos.sexo',
'equipes.categoria as categoria','escolas.nome as escola','dirigentes.nome as tecnico','municipios.nome as municipio')
->orderBy('municipios.nome')
->orderBy('escolas.nome')
->orderBy('alunos.nome')
->get();
return $alunos;
and finishing my export slide
<table>
<thead>
<tr>
<th>Nome Aluno</th>
<th>Data Nasc</th>
<th>Sexo</th>
<th>Categoria</th>
<th>Escola</th>
<th>Técnico</th>
<th>Município</th>
</tr>
</thead>
<tbody>
@foreach ($alunosModalidade as $alunoModalidade)
<tr>
<td >{{ $alunoModalidade->nome }}</td>
<td >{{ $alunoModalidade->data_nascimento }}</td>
<td >{{ $alunoModalidade->sexo }}</td>
<td >{{ $alunoModalidade->categoria }}</td>
<td >{{ $alunoModalidade->escola }}</td>
<td >{{ $alunoModalidade->tecnico}}</td>
<td >{{ $alunoModalidade->municipio }}</td>
</tr>
@endforeach
</tbody>
</table>
Step the 6 parameters but still it waits one in the function get()
.
Oh yes, I understand thank you so much for your help.
– Nícolas santos Souza