public function render_create_servicio($id = null)
 {
     if (Auth::check()) {
         $data["inside_url"] = Config::get('app.inside_url');
         $data["user"] = Session::get('user');
         // Verifico si el usuario es un Webmaster
         if ($data["user"]->idrol == 1 || $data["user"]->idrol == 2 || $data["user"]->idrol == 3 || $data["user"]->idrol == 4 && $id) {
             $data["familia_activo"] = FamiliaActivo::find($id);
             $data["tareas"] = TareasOtInspeccionEquipo::where('idfamilia_activo', $data["familia_activo"]->idfamilia_activo)->get();
             return View::make('investigacion/plantillas/createServicio', $data);
         } else {
             return View::make('error/error', $data);
         }
     } else {
         return View::make('error/error', $data);
     }
 }
 public function search_especificacion_tecnica()
 {
     if (Auth::check()) {
         $data["inside_url"] = Config::get('app.inside_url');
         $data["user"] = Session::get('user');
         // Verifico si el usuario es un Webmaster
         if ($data["user"]->idrol == 1 || $data["user"]->idrol == 2 || $data["user"]->idrol == 3 || $data["user"]->idrol == 4 || $data["user"]->idrol == 5 || $data["user"]->idrol == 6 || $data["user"]->idrol == 7 || $data["user"]->idrol == 8 || $data["user"]->idrol == 9 || $data["user"]->idrol == 10 || $data["user"]->idrol == 11 || $data["user"]->idrol == 12) {
             $data["search_familia_activo"] = Input::get('search_familia_activo');
             $data["familia_activos"] = FamiliaActivo::getNombreEquipo()->get();
             $data["especificaciones_tecnica"] = EspecificacionTecnica::GetEspecificacionTecnicaByFamiliaActivoInfo($data["search_familia_activo"])->get();
             $data["tipos_especificacion_tecnica"] = TipoEspecificacionTecnica::select('tipo_especificacion_tecnica.*')->get();
             $data["expedientes_tecnico_data"] = ExpedienteTecnico::getExpedienteTecnicoByFamiliaActivo($data["search_familia_activo"])->paginate(10);
             return View::make('especificacion_tecnica/listEspecificacionTecnica', $data);
         } else {
             return View::make('error/error', $data);
         }
     } else {
         return View::make('error/error', $data);
     }
 }
 public function render_create_expediente_tecnico()
 {
     if (Auth::check()) {
         $data["inside_url"] = Config::get('app.inside_url');
         $data["user"] = Session::get('user');
         // Verifico si el usuario es un Webmaster
         if ($data["user"]->idrol == 1 || $data["user"]->idrol == 2 || $data["user"]->idrol == 3 || $data["user"]->idrol == 4) {
             $data["tipos_adquisicion_expediente"] = TipoAdquisicionExpediente::orderBy('nombre', 'asc')->lists('nombre', 'idtipo_adquisicion_expediente');
             $data["tipos_compra_expediente"] = TipoCompraExpediente::orderBy('nombre', 'asc')->lists('nombre', 'idtipo_compra_expediente');
             $data["familia_activos"] = FamiliaActivo::getNombreEquipo()->get();
             $data["areas"] = Area::orderBy('nombre', 'asc')->lists('nombre', 'idarea');
             $data["servicios"] = Servicio::orderBy('nombre', 'asc')->lists('nombre', 'idservicio');
             return View::make('expediente_tecnico/createExpedienteTecnico', $data);
         } else {
             return View::make('error/error', $data);
         }
     } else {
         return View::make('error/error', $data);
     }
 }
 public function render_create_componente_modelo_familia_activo($idmodelo = null)
 {
     if (Auth::check()) {
         $data["inside_url"] = Config::get('app.inside_url');
         $data["user"] = Session::get('user');
         // Verifico si el usuario es un Webmaster
         if ($data["user"]->idrol == 1 && $idmodelo) {
             $data["modelo_info"] = ModeloActivo::find($idmodelo);
             if ($data["modelo_info"] == null) {
                 return Redirect::to('familia_activos/list_familia_activos');
             }
             $data["familia_activo_info"] = FamiliaActivo::find($data["modelo_info"]->idfamilia_activo);
             if ($data["familia_activo_info"] == null) {
                 return Redirect::to('familia_activos/list_familia_activos');
             }
             $data["componentes_info"] = Componente::getComponenteByModelo($data["modelo_info"]->idmodelo_equipo)->get();
             return View::make('modelo_activos/createComponenteModeloFamiliaActivo', $data);
         } else {
             return View::make('error/error', $data);
         }
     } else {
         return View::make('error/error', $data);
     }
 }
 public function submit_create_reporte_calibracion()
 {
     if (Auth::check()) {
         $data["inside_url"] = Config::get('app.inside_url');
         $data["user"] = Session::get('user');
         // Verifico si el usuario es un Webmaster
         if ($data["user"]->idrol == 1 || $data["user"]->idrol == 2 || $data["user"]->idrol == 3 || $data["user"]->idrol == 4) {
             // Validate the info, create rules for the inputs
             $attributes = array();
             $messages = array();
             $rules = array();
             $array_activos = Input::get('details_activos');
             $array_posiciones = Input::get('details_posiciones');
             // Run the validation rules on the inputs from the form
             $validator = Validator::make(Input::all(), $rules, $messages, $attributes);
             // If the validator fails, redirect back to the form
             if ($validator->fails()) {
                 return Redirect::to('reportes_calibracion/create_reporte')->withErrors($validator)->withInput(Input::all());
             } else {
                 $array_activos_no_registrados = [];
                 $array_idactivos = Input::get('details_activos');
                 $cantidad_activos = count($array_idactivos);
                 if ($cantidad_activos > 0) {
                     for ($i = 0; $i < $cantidad_activos; $i++) {
                         $idactivo = $array_idactivos[$i];
                         //se realiza una primera validacion de que se estan subierno por lo menos un archivo.
                         $existeArchivos = 0;
                         for ($j = 0; $j < 10; $j++) {
                             if (Input::hasFile('input-file-' . $idactivo . '-' . $j)) {
                                 $existeArchivos = 1;
                                 break;
                             }
                         }
                         if ($existeArchivos == 1 && Input::get('fecha_calibracion-' . $idactivo) != null && Input::get('fecha_proximo-' . $idactivo) != null) {
                             //como ya existe se crea de una vez el reporte de calibracion
                             $reporte_calibracion = new ReporteCalibracion();
                             $reporte_calibracion->codigo_abreviatura = "RC";
                             $reporte_calibracion->codigo_correlativo = $this->getCorrelativeReportNumber();
                             $reporte_calibracion->codigo_anho = date('y');
                             $reporte_calibracion->idactivo = $idactivo;
                             $reporte_calibracion->fecha_calibracion = date("Y-m-d", strtotime(Input::get('fecha_calibracion-' . $idactivo)));
                             $reporte_calibracion->fecha_proxima_calibracion = date("Y-m-d", strtotime(Input::get('fecha_proximo-' . $idactivo)));
                             $reporte_calibracion->idestado = 27;
                             $reporte_calibracion->save();
                             for ($j = 0; $j < 10; $j++) {
                                 if (Input::hasFile('input-file-' . $idactivo . '-' . $j)) {
                                     $archivo = Input::file('input-file-' . $idactivo . '-' . $j);
                                     $rutaDestino = 'uploads/documentos/riesgos/Reportes de Calibracion/' . $reporte_calibracion->codigo_abreviatura . $reporte_calibracion->codigo_correlativo . $reporte_calibracion->codigo_anho . '/';
                                     $nombreArchivo = $archivo->getClientOriginalName();
                                     $nombreArchivoEncriptado = Str::random(27) . '.' . pathinfo($nombreArchivo, PATHINFO_EXTENSION);
                                     $uploadSuccess = $archivo->move($rutaDestino, $nombreArchivoEncriptado);
                                     $detalle_reporte_calibracion = new DetalleReporteCalibracion();
                                     $detalle_reporte_calibracion->nombre = $nombreArchivo;
                                     $detalle_reporte_calibracion->nombre_archivo = $nombreArchivo;
                                     $detalle_reporte_calibracion->nombre_archivo_encriptado = $nombreArchivoEncriptado;
                                     $detalle_reporte_calibracion->url = $rutaDestino;
                                     $detalle_reporte_calibracion->idreporte_calibracion = $reporte_calibracion->id;
                                     $detalle_reporte_calibracion->save();
                                 }
                             }
                         } else {
                             array_push($array_activos_no_registrados, $idactivo);
                         }
                     }
                     $cantidad = count($array_activos_no_registrados);
                     if ($cantidad != $cantidad_activos) {
                         if ($cantidad == 0) {
                             $string = "Se han registrado los reportes de calibracion.<br>";
                             Session::flash('message', $string);
                             return Redirect::to('reportes_calibracion/list_reportes_calibracion');
                         }
                         $string = "Se han registrado los reportes de calibracion con excepción de los siguientes equipos:<br>";
                         for ($i = 0; $i < $cantidad; $i++) {
                             $activo = Activo::searchActivosById($array_activos_no_registrados[$i])->get()[0];
                             $familia_activo = FamiliaActivo::find($activo->idfamilia_activo)->get()[0];
                             $modelo_activo = ModeloActivo::find($activo->modelo)->get()[0];
                             $string_line = $i + 1 . ':<pre> Equipo: ' . $familia_activo->nombre_equipo . ' Modelo: ' . $modelo_activo->nombre . ' Cód. Patrimonial: ' . $activo->codigo_patrimonial . '</pre><br>';
                             $string = $string . $string_line;
                         }
                     } else {
                         Session::flash('error', 'Para registrar un reporte de calibración a un equipo debe:<br> Adjuntar por lo menos 1 documento.<br>Llenar los campos Fecha de Calibración y Fecha Próxima de Calibración');
                         return Redirect::to('reportes_calibracion/create_reporte');
                     }
                     Session::flash('message', $string);
                     return Redirect::to('reportes_calibracion/list_reportes_calibracion');
                 } else {
                     Session::flash('error', 'Ingrese uno o más equipos médicos');
                     return Redirect::to('reportes_calibracion/create_reporte');
                 }
             }
         } else {
             return View::make('error/error', $data);
         }
     } else {
         return View::make('error/error', $data);
     }
 }
    public function export_pdf()
    {
        if (Auth::check()) {
            $data["inside_url"] = Config::get('app.inside_url');
            $data["user"] = Session::get('user');
            // Verifico si el usuario es un Webmaster
            if ($data["user"]->idrol == 1 || $data["user"]->idrol == 2 || $data["user"]->idrol == 3 || $data["user"]->idrol == 4 || $data["user"]->idrol == 5 || $data["user"]->idrol == 6 || $data["user"]->idrol == 7 || $data["user"]->idrol == 8 || $data["user"]->idrol == 9 || $data["user"]->idrol == 10 || $data["user"]->idrol == 11 || $data["user"]->idrol == 12) {
                $solicitud_id = Input::get('solicitud_id');
                $solicitud = SolicitudCompra::find($solicitud_id);
                if ($solicitud == null) {
                    $url = "solicitudes_compra/edit_solicitud_compra" . "/" . $solicitud_id;
                    return Redirect::to($url);
                }
                $servicio = Servicio::find($solicitud->idservicio);
                $familia = FamiliaActivo::find($solicitud->idfamilia_activo);
                $usuario = User::find($solicitud->id_responsable);
                $tipo_solicitud = TipoSolicitudCompra::find($solicitud->idtipo_solicitud_compra);
                $estado = Estado::find($solicitud->idestado);
                $documento = Documento::searchDocumentoByIdSolicitudCompra($solicitud_id)->get();
                $documento = $documento[0];
                $detalle_solicitud = DetalleSolicitudCompra::getDetalleSolicitudCompra($solicitud_id)->get();
                $size = count($detalle_solicitud);
                $table = '<table style="width:100%">' . '<tr><th>Descripcion</th><th>Marca</th><th>Modelo</th><th>Serie/Numero Parte</th><th>Cantidad</th></tr>';
                for ($i = 0; $i < $size; $i++) {
                    $detalle = $detalle_solicitud[$i];
                    $table = $table . '<tr>' . '<td>' . $detalle->descripcion . '</td>' . '<td>' . $detalle->modelo . '</td>' . '<td>' . $detalle->marca . '</td>' . '<td>' . $detalle->serie_parte . '</td>' . '<td>' . $detalle->cantidad . '</td>' . '</tr>';
                }
                $table = $table . '</table>';
                $html = '<html><head><style>' . 'table, th, td {
    						border: 1px solid black;
    						border-collapse: collapse;
						}' . 'th, td {
							text-align: center;
						}' . '.lista_generales{
							list-style-type:none;
							border:1px solid black;
							width:100%;
						}' . 'li{
							margin-bottom:5px;
							margin-left:-15px;
						}' . '.nombre_general{
							width:100%;
						}' . '#titulo{
							text-align:center;
							margin-top:60px;
							position:fixed;
						}' . '#logo{
							padding:10px 10px 10px 10px;	
						}' . '</style>
						</head>' . '<div class="nombre_general"><img id="logo" src="img/logo_uib.jpg" ></img><h2 id="titulo" >Requerimiento de Compra: N°' . $solicitud->idsolicitud_compra . '</h2></div>' . '<div>' . '<ul class="lista_generales">' . '<li><label><strong>Numero Orden de Mantenimiento</strong></label>: OT N° ' . $solicitud->idordenes_trabajo . '</li>' . '<li><label><strong>Servicio: </strong></label>' . $servicio->nombre . '</li>' . '<li><label><strong>Nombre del Equipo: </strong></label>' . $familia->nombre_equipo . '</li>' . '<li><label><strong>Usuario Responsable: </strong></label>' . $usuario->apellido_pat . ' ' . $usuario->apellido_mat . ', ' . $usuario->nombre . '</li>' . '<li><label><strong>Tipo de Requerimiento: </strong></label>' . $tipo_solicitud->nombre . '</li>' . '<li><label><strong>Fecha: </strong></label>' . $solicitud->fecha . '</li>' . '<li><label><strong>Estado: </strong></label>' . $estado->nombre . '</li>' . '<li><label><strong>Sustento: </strong></label>' . $solicitud->sustento . '</li>' . '<li><label><strong>Reporte de Necesidad: </strong></label>' . $documento->codigo_archivamiento . '</li>' . '</ul></div>' . '<div>' . $table . '</div>' . '</html>';
                return PDF::load($html, "A4", "portrait")->show();
            } else {
                return View::make('error/error', $data);
            }
        } else {
            return View::make('error/error', $data);
        }
    }
 public function search_nombre_equipo_ajax()
 {
     if (!Request::ajax() || !Auth::check()) {
         return Response::json(array('success' => false), 200);
     }
     $id = Auth::id();
     $data["inside_url"] = Config::get('app.inside_url');
     $data["user"] = Session::get('user');
     if ($data["user"]->idrol == 1 || $data["user"]->idrol == 2 || $data["user"]->idrol == 3 || $data["user"]->idrol == 4 || $data["user"]->idrol == 5 || $data["user"]->idrol == 6 || $data["user"]->idrol == 7 || $data["user"]->idrol == 8 || $data["user"]->idrol == 9 || $data["user"]->idrol == 10 || $data["user"]->idrol == 11 || $data["user"]->idrol == 12) {
         // Check if the current user is the "System Admin"
         $data = Input::get('selected_id');
         if ($data != 0) {
             $familia_activo = FamiliaActivo::searchFAmiliaActivoByMarca($data)->get();
         } else {
             $familia_activo = array();
         }
         return Response::json(array('success' => true, 'nombre_equipo' => $familia_activo), 200);
     } else {
         return Response::json(array('success' => false), 200);
     }
 }
 public function export_pdf()
 {
     if (Auth::check()) {
         $data["inside_url"] = Config::get('app.inside_url');
         $data["user"] = Session::get('user');
         // Verifico si el usuario es un Webmaster
         if ($data["user"]->idrol == 1 || $data["user"]->idrol == 2 || $data["user"]->idrol == 3 || $data["user"]->idrol == 4 || $data["user"]->idrol == 5 || $data["user"]->idrol == 6 || $data["user"]->idrol == 7 || $data["user"]->idrol == 8 || $data["user"]->idrol == 9 || $data["user"]->idrol == 10 || $data["user"]->idrol == 11 || $data["user"]->idrol == 12) {
             $idot_vmetrologica = Input::get('idot_vmetrologica');
             $data["ot_vm"] = OrdenesTrabajoVerifMetrologica::find($idot_vmetrologica);
             if ($data["ot_vm"] == null) {
                 $url = "verif_metrologica/create_ot_verif_metrologica" . "/" . $idot_vmetrologica;
                 return Redirect::to($url);
             }
             $data["usuarioSolicitante"] = User::find($data["ot_vm"]->id_usuariosolicitante);
             $data["usuarioElaborador"] = User::find($data["ot_vm"]->id_usuarioelaborador);
             $data["servicio"] = Servicio::find($data["ot_vm"]->idservicio);
             $data["ejecutor"] = $data["ot_vm"]->nombre_ejecutor;
             $data["ubicacion"] = UbicacionFisica::find($data["ot_vm"]->idubicacion_fisica);
             $data["numero_ficha"] = $data["ot_vm"]->numero_ficha;
             $data["activo"] = Activo::find($data["ot_vm"]->idactivo);
             $data["modelo"] = ModeloActivo::find($data["activo"]->idmodelo_equipo);
             $data["familia"] = FamiliaActivo::find($data["modelo"]->idfamilia_activo);
             $data["marca"] = Marca::find($data["familia"]->idmarca);
             $data["fecha_programacion"] = $data["ot_vm"]->fecha_programacion;
             $data["fecha_conformidad"] = $data["ot_vm"]->fecha_conformidad;
             $data["estado_inicial"] = Estado::find($data["ot_vm"]->idestado_inicial);
             $data["estado_final"] = Estado::find($data["ot_vm"]->idestado_final);
             $data["estado_ot"] = Estado::find($data["ot_vm"]->idestado_ot);
             $data["documento"] = Documento::searchDocumentoByIdOtVerifMetrologica($idot_vmetrologica)->get();
             if (count($data["documento"]) != 0) {
                 $data["documento"] = $data["documento"][0];
             }
             $data["personal_data"] = PersonalOtVerifMetrologica::getPersonalXOt($idot_vmetrologica)->get();
             $html = View::make('ot/verifMetrologica/otVerifMetrologicaExport', $data);
             return PDF::load($html, "A4", "portrait")->show();
         } else {
             return View::make('error/error', $data);
         }
     } else {
         return View::make('error/error', $data);
     }
 }
 public function render_view_familia_activo($idfamilia_activo = null)
 {
     if (Auth::check()) {
         $data["inside_url"] = Config::get('app.inside_url');
         $data["user"] = Session::get('user');
         // Verifico si el usuario es un Webmaster
         if ($data["user"]->idrol == 1 && $idfamilia_activo) {
             $data["tipo_activo"] = TipoActivo::lists('nombre', 'idtipo_activo');
             $data["marca"] = Marca::lists('nombre', 'idmarca');
             $data["familiaactivo_info"] = FamiliaActivo::find($idfamilia_activo);
             $data["modelo_equipo_info"] = ModeloActivo::getModeloByFamiliaActivo($idfamilia_activo)->get();
             if ($data["familiaactivo_info"] == null) {
                 return Redirect::to('familia_activos/list_familia_activos');
             }
             $data["familiaactivo_info"] = $data["familiaactivo_info"];
             return View::make('familia_activos/viewFamiliaActivo', $data);
         } else {
             return View::make('error/error', $data);
         }
     } else {
         return View::make('error/error', $data);
     }
 }
 public function export_pdf_adquisicion()
 {
     if (Auth::check()) {
         $data["inside_url"] = Config::get('app.inside_url');
         $data["user"] = Session::get('user');
         // Verifico si el usuario es un Webmaster
         if ($data["user"]->idrol == 1 || $data["user"]->idrol == 2 || $data["user"]->idrol == 3 || $data["user"]->idrol == 4 || $data["user"]->idrol == 7 || $data["user"]->idrol == 8 || $data["user"]->idrol == 9 || $data["user"]->idrol == 10 || $data["user"]->idrol == 11 || $data["user"]->idrol == 12) {
             $data["cotizacion_data"] = Cotizacion::find(Input::get('idcotizacion'));
             $data["anho_actual"] = date('Y');
             $data["cotizaciones_historico"] = Cotizacion::getCotizacionesHistorico($data["cotizacion_data"]->nombre_equipo, $data["cotizacion_data"]->nombre_detallado, $data["anho_actual"] - 5, $data["anho_actual"] - 4, $data["anho_actual"] - 3, $data["anho_actual"] - 2, $data["anho_actual"] - 1, $data["anho_actual"]);
             $data["referencias_seace_historico"] = Cotizacion::getReferenciasSeaceHistorico($data["cotizacion_data"]->nombre_equipo, $data["cotizacion_data"]->nombre_detallado, $data["anho_actual"] - 5, $data["anho_actual"] - 4, $data["anho_actual"] - 3, $data["anho_actual"] - 2, $data["anho_actual"] - 1, $data["anho_actual"]);
             if ($data["cotizacion_data"]->nombre_detallado == '') {
                 $data["activos_precio_historico"] = FamiliaActivo::getActivosPrecioHistorico($data["cotizacion_data"]->nombre_equipo, $data["anho_actual"] - 5, $data["anho_actual"] - 4, $data["anho_actual"] - 3, $data["anho_actual"] - 2, $data["anho_actual"] - 1, $data["anho_actual"]);
             } else {
                 $data["activos_precio_historico"] = array();
             }
             $html = View::make('cotizaciones/CotizacionExportAdquisicion', $data);
             return PDF::load($html, "A4", "portrait")->show();
         } else {
             return View::make('error/error', $data);
         }
     } else {
         return View::make('error/error', $data);
     }
 }