Skip to content

Instantly share code, notes, and snippets.

@ingliths
Created December 27, 2018 13:43
Show Gist options
  • Save ingliths/121718f83b7e08f4d04bacc9714df8ff to your computer and use it in GitHub Desktop.
Save ingliths/121718f83b7e08f4d04bacc9714df8ff to your computer and use it in GitHub Desktop.
Ponto/php
public function search(){
$dirId=Diretoria::find(Auth::user()->diretoria);
if(input::get('dadosMatricula')== false){
$dirId=Diretoria::find(Auth::user()->diretoria);
return view('relatorio_ponto',compact('dirId'));
}
if(input::get('dadosMatricula')){
$pontos = $dirId->pontos()->where('PONTO_FUNCIONARIO','like','%'.input::get('dadosMatricula').'%')
->get();
}
if(input::get('dadosMatricula') == true && input::get('dadosEntrada')== true){
$data1 = input::get('dadosEntrada');
$data2 = input::get('dadosSaida');
$pontos = $dirId->pontos()->where('PONTO_FUNCIONARIO', 'like', '%' .input::get('dadosMatricula') . '%')
->whereBetween('PONTO_ENTRADA',[ $data1,$data2 ] )
->get();
}
return view('search',compact('pontos'));
}
@victorhsanjos
Copy link

public function search() {
    $diretoria = Diretoria::find(Auth::user()->diretoria); 

    if (request('dadosMatricula') == false) {
        return view('relatorio_ponto', compact('diretoria'));
    }

    $query = $diretoria->newQuery()

    $query->when(request('dadosMatricula'), function ($q) {
        return $q->join('pontos', 'pontos.id', '=', 'pontos.diretoria_id')
            ->where('ponto_funcionario', 'like', '%'.request('dadosMatricula').'%');
    });

    $query->when(request('dadosEntrada'), function ($q) {
        return $q->join('pontos', 'pontos.id', '=', 'pontos.diretoria_id')
            ->whereDate('ponto_entrada', '>=', request('dadosEntrada'))
    });

    $query->when(request('dadosSaida'), function ($q) {
        return $q->join('pontos', 'pontos.id', '=', 'pontos.diretoria_id')
            ->whereDate('ponto_entrada', '<=', request('dadosSaida'))
    });

    $pontos = $query->get();

    return view('search', compact('pontos'));
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment