Пример #1
0
 /**
  * Update the specified resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function update(UBSRequest $request)
 {
     $ubs = \App\UBS::find($request->input('ubs_id'));
     $nome = filter_var($request->input('ubs_nome'), FILTER_SANITIZE_STRING);
     $telefone = filter_var($request->input('ubs_telefone'), FILTER_SANITIZE_STRING);
     try {
         $ubs->ubs_nome = $nome;
         $ubs->ubs_telefone = $telefone;
         $ubs->save();
         return redirect('ubs/listar')->with('status', 'Unidade de Saúde atualizada!');
     } catch (Exception $ex) {
     }
 }
Пример #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();
 }