public function setors($exames) { foreach (Setor::orderBy('descricao')->get() as $setor) { if (!empty($setor->postoTrabalhos->count())) { $this->SetFillColor(150); $this->Cell(190, 5, utf8_decode($setor->descricao), 1, 0, 'C', 1); $this->Ln(); $this->SetFillColor(200); $this->Cell(50, 4, utf8_decode('Posto de Trabalho'), 1, 0, 'C', 1); $this->Cell(80, 4, utf8_decode('Tipo de Exame'), 1, 0, 'C', 1); $this->Cell(15, 4, utf8_decode('Total'), 1, 0, 'C', 1); $this->Cell(15, 4, utf8_decode('Alterados'), 1, 0, 'C', 1); $this->SetFont('Arial', '', 6); $this->Cell(21, 4, utf8_decode('Alterados * 100/Total'), 1, 0, 0, 1); $this->Ln(); foreach ($setor->postoTrabalhos()->orderBy('descricao')->get() as $posto) { $aso = Aso::where('colaborador_setor_id', $setor->id)->where('posto_id', $posto->id)->lists('id'); if (count($posto->asos) && AsoExame::whereIn('relacao_id', $aso)->count() != 0) { $this->SetFillColor(240); $this->SetFont('Arial', '', 9); $this->Cell(50, 4, utf8_decode($posto->descricao), 1, 0, 'L', 1); $count = 0; foreach (Exame::all() as $exame) { $exames = AsoExame::where('exame_id', $exame->id)->whereIn('relacao_id', $aso)->count(); $alterado = AsoExame::where('exame_id', $exame->id)->whereIn('relacao_id', $aso)->whereNotIn('resultado', ['normal', 'NÃO REAGENTE', 'NORMAL', 'norm', 'NORMA'])->count(); if ($exames != 0) { if ($count == 0) { $this->Cell(80, 4, utf8_decode($exame->descricao), 1, 0, 'L', 0); $this->Cell(15, 4, $exames, 1, 0, 'L', 0); $this->Cell(15, 4, $alterado, 1, 0, 'L', 0); $this->Cell(21, 4, number_format($alterado * 100 / $exames, 2, ',', '.') . ' %', 1, 0, 'R', 0); $this->Ln(); } else { $this->Cell(50, 4, '', 0, 0, 'L', 0); $this->Cell(80, 4, utf8_encode($exame->descricao), 1, 0, 'L', 0); $this->Cell(15, 4, $exames, 1, 0, 'L', 0); $this->Cell(15, 4, $alterado, 1, 0, 'L', 0); $this->Cell(21, 4, number_format($alterado * 100 / $exames, 2, ',', '.') . ' %', 1, 0, 'R', 0); $this->Ln(); } if (empty($totalExame[$exame->descricao])) { $totalExame[$exame->descricao] = 0; } if (empty($totalAlterados[$exame->descricao])) { $totalAlterados[$exame->descricao] = 0; } $totalExame[$exame->descricao] = $exames + $totalExame[$exame->descricao]; $totalAlterados[$exame->descricao] = $alterado + $totalAlterados[$exame->descricao]; $count = $count + 1; } } $this->Ln(); } } $this->AddPage(); } } $this->Cell(190, 7, utf8_decode('Total de Exames Realizados'), 1, 0, 'C', 1); $this->Ln(); $this->Cell(80, 6, utf8_decode('Descrição'), 'BLT', 0, 'C', 1); $this->Cell(30, 6, 'Realizados', 'BLT', 0, 'C', 1); $this->Cell(30, 6, 'Alterados', 'BLT', 0, 'C', 1); $this->Cell(40, 6, 'Alterados*100/Realizados', 1, 0, 'C', 1); $this->Ln(); foreach ($totalExame as $exame => $valor) { $this->Cell(80, 6, utf8_decode($exame), 'BLT', 0, 'L'); $this->Cell(30, 6, $totalExame[$exame], 'BLT', 0, 'C'); $this->Cell(30, 6, $totalAlterados[$exame], 'BLT', 0, 'C'); $this->Cell(40, 6, number_format($totalAlterados[$exame] * 100 / $totalExame[$exame], 2, ',', '.') . ' %', 1, 0, 'C'); $this->Ln(); } }
public function setSelecionar($id) { $input = Input::all(); $ficha = $this->fichas->find($id); $aso = new Aso(); $aso->tipo = 'admissional'; $aso->posto_id = $input['posto_id']; $aso->colaborador_setor_id = $input['setor_id']; $aso->colaborador_nome = utf8_encode($ficha->nome); $aso->colaborador_data_nascimento = $ficha->data_nascimento; $aso->colaborador_sexo = $ficha->sexo; $aso->colaborador_rg = $ficha->rg; $aso->colaborador_orgao_emissor = $ficha->emissao; $aso->medico = "DR PEDRO LUIZ GOMES"; $aso->ficha_id = $id; $aso->colaborador_funcao_id = $input['funcao_id']; $aso->save(); $ficha->update(['situacao' => 0]); return Redirect::route('fichas.index'); }