public function obtenerMemoPorSerial(Serial $serial) { try { $memos = DB::table('pEntregaexp')->join('tHistorico', function ($join) { $join->on('tHistorico.curp', '=', 'pEntregaexp.curp')->on('tHistorico.idevaluacion', '=', 'pEntregaexp.idevaluacion'); })->join('tElementosint', 'tElementosint.curp', '=', 'tHistorico.curp')->where('pEntregaexp.cmemo', $serial->getSerialBase())->orderBy('tHistorico.SerialElement')->get(); $totalEvaluaciones = count($memos); if ($totalEvaluaciones > 0) { $memoEntrega = new MemoEntrega($memos[0]->cmemo); $memoEntrega->setSerial($serial); foreach ($memos as $memos) { is_null($memos->fidtox) ? $entrega = false : ($entrega = true); $evaluacion = new Evaluacion($memos->idhistorico); $evaluacion->setElemento(new Elemento($memos->nombre, $memos->paterno, $memos->materno, $memos->curp, $memos->rfc)); $evaluacion->setNumeroEvaluacion($memos->idevaluacion); $evaluacion->setDiferenciada($memos->evaldiferenciada); $evaluacion->setSerial(new SerialExpediente($memos->SerialElement . $memoEntrega->getSerial()->getArea()->getId())); $evaluacion->setEntregaMedicoToxicologica($entrega); $this->obtenerEvaluacionesPoligraficasdeEvaluacion($evaluacion); $evaluacion->verificarEntregaDePoligrafia(); if (is_null($memos->idArchivoEstatus)) { // en integración $evaluacion->setArchivoEstatus(new ArchivoEstatus(1)); } $memoEntrega->agregarEvaluacion($evaluacion); } return $memoEntrega; } return null; } catch (\PDOException $e) { echo $e->getMessage(); return null; } }
/** * devolver la vista indicada dependiendo del área que entrega * 4 = Poligrafía, se da trato especial por que puede tener más de una reeexaminación * @param MemoEntrega $memoEntrega * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View */ public static function crear(MemoEntrega $memoEntrega) { $nombreVista = ''; switch ($memoEntrega->getSerial()->getArea()->getId()) { case 1: case 2: case 3: case 5: $nombreVista = 'custodia.archivo.archivo_entregas_lista'; break; case 4: $nombreVista = 'custodia.archivo.archivo_entregas_lista_poligrafia'; break; } return view($nombreVista, compact('memoEntrega'))->render(); }