public function delete(Request $request)
 {
     $profissional = \App\Profissional::find($request->input('prof_id'));
     try {
         $profissional->delete();
         return redirect('profissional/listar')->with('status', 'Profissional deletado com sucesso');
     } catch (Exception $ex) {
         return redirect('profissional/listar')->with('status', $ex->getMessage());
     }
 }
Esempio n. 2
0
 public function relatorio(Request $request)
 {
     $titulo = 'Pacientes em Tratamento';
     $sql = "SELECT \n                t.tto_diagnostico, t.tto_data_inicio, \n                t.tto_turno, p.pac_nome, p.pac_nascimento,\n                p.pac_cns, p.pac_sexo, pf.prof_nome,\n                p.fk_ubs_id, u.ubs_nome\n                FROM tb_tratamento t INNER JOIN tb_paciente p \n                ON t.fk_pac_id = p.pac_id\n                INNER JOIN tb_profissional pf\n                ON t.fk_prof_id = pf.prof_id\n                INNER JOIN tb_ubs u\n                ON p.fk_ubs_id = u.ubs_id\n                WHERE t.tto_data_alta IS NULL";
     if ($request->has('tecnico')) {
         $sql .= sprintf(" AND t.fk_prof_id = %s", $request->input('tecnico'));
         $tr = \App\Profissional::find((int) $request->input('tecnico'));
         $titulo .= sprintf("\nTécnico de Referência: %s", $tr->prof_nome);
     }
     if ($request->has('ubs')) {
         $sql .= sprintf(" AND p.fk_ubs_id = %s", $request->input('ubs'));
         $ubs = \App\UBS::find((int) $request->input('ubs'));
         $titulo .= sprintf("\nUBS: %s", $ubs->ubs_nome);
     }
     if ($request->has('cid')) {
         $sql .= sprintf(" AND t.tto_diagnostico = '%s'", $request->input('cid'));
         $titulo .= sprintf("\nCID: %s", $request->input('cid'));
     }
     if ($request->has('turno')) {
         $sql .= sprintf(" AND t.tto_turno = '%s' ", $request->input('turno'));
         $titulo .= sprintf("\nTurno: %s", $request->input('turno'));
     }
     if ($request->has('sexo')) {
         $sql .= sprintf(" AND p.pac_sexo = '%s'", $request->input('sexo'));
         $titulo .= sprintf("\nSexo: %s", $request->input('sexo'));
     }
     if ($request->has('idade_inicial') && $request->has('idade_final')) {
         $sql .= sprintf(" AND TIMESTAMPDIFF(YEAR, p.pac_nascimento, curdate() ) " . "BETWEEN %s AND %s", $request->input('idade_inicial'), $request->input('idade_final'));
         $titulo .= sprintf("\nIdade entre %s e %s anos", $request->input('idade_inicial'), $request->input('idade_final'));
     }
     if ($request->has('data_inicial') && $request->has('data_final')) {
         $sql .= sprintf(" AND t.tto_data_inicio BETWEEN '%s' AND '%s'", $request->input('data_inicial'), $request->input('data_final'));
         $dataInicial = \DateTime::createFromFormat('Y-m-d', $request->input('data_inicial'));
         $dataFinal = \DateTime::createFromFormat('Y-m-d', $request->input('data_final'));
         $titulo .= sprintf("\nInício entre %s e %s", $dataInicial->format('d-m-Y'), $dataFinal->format('d-m-Y'));
     }
     if ($request->has('ordem') && $request->has('asc_desc')) {
         $sql .= sprintf(" ORDER BY %s %s", $request->input('ordem'), $request->input('asc_desc'));
     }
     $relatorio = new \App\Relatorios\RelatorioTratamento(DB::select($sql), $titulo);
     return $relatorio->Output();
 }