示例#1
0
 private function getUsuarios()
 {
     $this->solicita = User::find($this->req->solicita);
     if ($this->req->solicita != $this->req->autoriza) {
         $this->autoriza = User::find($this->req->autoriza);
     }
     if ($this->req->solicita != $this->req->vobo) {
         $this->vobo = User::find($this->req->vobo);
     }
 }
示例#2
0
 public function __construct(Modulo $modulos)
 {
     if (\Auth::check()) {
         $user = User::find(\Auth::user()->id);
         if (count($user->roles) > 0) {
             $modulos = new Collection();
             foreach ($user->roles as $role) {
                 $modulos = $modulos->merge($role->modulos()->orderBy('orden')->get());
             }
             $this->modulos = $modulos;
         } else {
             $this->modulos = null;
         }
     }
 }
 public function __construct(Request $request)
 {
     if (\Auth::check()) {
         $usuarios_asignados = \Auth::user()->usuariosAsignados()->get();
         if (count($usuarios_asignados) > 0) {
             foreach ($usuarios_asignados as $usuario_asignado) {
                 $this->usuarios_asignados[] = $usuario_asignado->usuarioAsigna()->first(['id', 'nombre']);
             }
         }
         if ($request->session()->has('usuarioOriginal')) {
             $usuario_original = User::find($request->session()->get('usuarioOriginal'));
             $this->usuarios_asignados[] = $usuario_original;
         }
     }
 }
示例#4
0
 /**
  * Obtiene un arreglo con los usuarios en los grupos colectivos a los que pertenece un usuario
  *
  * @param $user_id
  * @return array
  */
 public function getGruposColectivos($user_id)
 {
     $grupos_usuarios = User::find($user_id)->grupos()->where('tipo', 'LIKE', '%Colectivo%')->with(['users' => function ($query) {
         //$query->wherePivot('supervisa', '!=', 1);//Elimina de la consulta a supervisores
         $query->addSelect(['user_id']);
     }])->get();
     $grupos_usuarios = $grupos_usuarios->map(function ($grupo) {
         return $grupo->users->pluck('user_id');
     });
     $arr_usuarios_grupo = [];
     foreach ($grupos_usuarios as $grupo) {
         foreach ($grupo as $user_id) {
             //Genera $arr_usuarios_grupo para filtrar documentos por user_id
             $arr_usuarios_grupo[] = $user_id;
         }
     }
     return $arr_usuarios_grupo;
 }
示例#5
0
 /**
  * Show the form for editing the specified resource.
  *
  * @param  int  $id
  * @return Response
  */
 public function edit($id)
 {
     $user = User::find($id);
     $roles = Role::all();
     $cargos = $user->cargos;
     $urgs = Urg::all();
     //Verifica si el rol del usuario es Administrador
     $user_actual = \Auth::user();
     $arr_roles = $user_actual->roles()->lists('role_name')->all();
     if (array_search('Administrador', $arr_roles) !== false) {
         $role_admin = true;
         $usuarios = User::all()->sortBy('nombre')->lists('nombre', 'id')->all();
     } else {
         $role_admin = false;
         $usuarios = [];
     }
     return view('admin.usuarios.formUsuario')->with('user', $user)->with('roles', $roles)->with('cargos', $cargos)->with('urgs', $urgs)->with('role_admin', $role_admin)->with('usuarios', $usuarios);
 }
 /**
  * Show the form for editing the specified resource.
  *
  * @param  int  $req_id
  * @param  int  $articulo_id
  * @return Response
  */
 public function edit($req_id, $articulo_id)
 {
     $articulo = Articulo::find($articulo_id);
     //Verifica que el artículo corresponda a la requisición
     if ($articulo->req_id == $req_id) {
         $solicita = User::find($articulo->req->solicita);
         $data['solicita'] = $solicita;
         $unidades = Unidad::all();
         foreach ($unidades as $unidad) {
             $arr_unidades[$unidad->tipo][$unidad->unidad] = $unidad->unidad;
         }
         $data['articulo'] = $articulo;
         $data['req'] = $articulo->req;
         $data['unidades'] = $arr_unidades;
         return view('reqs.formArticulo')->with($data);
     } else {
         return redirect()->action('RequisicionController@show', array($req_id))->with(['alert-class' => 'alert-warning', 'message' => 'El artículo no corresponde a la requisición']);
     }
 }
 /**
  * Muestra formulario para autorizar requisición.
  *
  * @return Response
  */
 public function formAutorizar($id)
 {
     $req = Req::find($id);
     $articulos = Articulo::whereReqId($id)->with('cotizaciones')->with('rms.cog')->get();
     $articulos_helper = new ArticulosHelper($articulos, $id);
     $articulos_helper->setArticulosSinRms();
     $articulos_helper->setRmsArticulos();
     $arr_rms = Rm::whereProyectoId($req->proyecto_id)->get()->lists('cog_rm_saldo', 'id')->all();
     $data['req'] = $req;
     $data['articulos'] = $articulos;
     $data['articulos_sin_rms'] = $articulos_helper->articulos_sin_rms;
     $data['rms_articulos'] = $articulos_helper->rms_articulos;
     $data['arr_rms'] = $arr_rms;
     $rms_asignados = true;
     foreach ($articulos as $articulo) {
         if ($articulo->rms->count() == 0) {
             $rms_asignados = false;
         }
     }
     $data['rms_asignados'] = $rms_asignados;
     $solicita = User::find($req->solicita);
     $data['solicita'] = $solicita;
     return view('reqs.formAutorizarReq')->with($data);
 }
 public function formUsuario()
 {
     $user = User::find(\Auth::user()->id);
     return view('util.activar_cuenta.formActivarUsuario', compact('user'));
 }
示例#9
0
 public function crearPdf()
 {
     $this->AliasNbPages();
     $this->SetAutoPageBreak(true, 45);
     $this->AddPage();
     $usuario_finanzas = \InfoDirectivos::getResponsable('FIN');
     $usuario_presu = \InfoDirectivos::getResponsable('PRESU');
     $this->SetFont('Arial', 'B', 11);
     $this->SetX(25);
     $this->Cell(180, 5, 'OFICIO NO.' . $this->solicitud->no_documento, 0, 2, 'R');
     $this->Ln(5);
     $this->SetX(25);
     $this->Cell(180, 5, utf8_decode($usuario_finanzas->prefijo . " " . $usuario_finanzas->nombre), 0, 2, "L");
     $this->Cell(180, 5, utf8_decode($usuario_finanzas->cargo), 0, 2, "L");
     $this->Cell(180, 5, "CUCEI", 0, 2, "L");
     $this->Cell(180, 5, "P R E S E N T E", 0, 2, "L");
     $this->Cell(180, 5, utf8_decode("At'n. " . $usuario_presu->prefijo . " " . $usuario_presu->nombre), 0, 2, "R");
     $this->Cell(180, 5, utf8_decode($usuario_presu->cargo), 0, 2, "R");
     $this->Ln();
     $this->SetFont('Arial', '', 10);
     $this->SetX(25);
     $this->Cell(71, 4, 'Por medio del presente solicito el tramite de:', 0, 0, 'L');
     $this->SetFont('Arial', 'B', 10);
     $this->Cell(70, 4, $this->solicitud->tipo_solicitud, 0, 1, 'L');
     $this->SetFont('Arial', '', 10);
     $this->Ln();
     $this->SetX(25);
     $this->Cell(60, 4, 'Dicho recurso se solicita para:', 0, 2, 'L');
     $this->SetFont('Arial', '', 9);
     $this->MultiCell(180, 3.5, utf8_decode($this->solicitud->concepto), 0, "L");
     $this->Ln(5);
     $this->SetX(25);
     $this->Cell(28, 4, 'Cheque a favor de:', 0, 0, 'L');
     $this->SetFont('Arial', 'B', 10);
     $this->MultiCell(145, 4, utf8_decode($this->solicitud->benef->benef), "B", 'L');
     $this->SetFont('Arial', '', 10);
     $this->Ln();
     $this->SetX(25);
     $this->Cell(28, 4, 'Por el monto de:', 0, 0, 'L');
     $this->SetFont('CenturyGothic', '', '10');
     $this->Cell(145, 4, "\$ " . number_format($this->solicitud->monto, 2), "B", 1, 'L');
     $this->SetFont('Arial', '', 10);
     $this->Ln();
     if (!empty($this->solicitud->obs)) {
         $this->Ln(3);
         $this->SetX(25);
         $this->Cell(28, 3.5, 'Observaciones:', 0, 0, 'L');
         $this->SetFont('Arial', '', 9);
         $this->MultiCell(155, 3.5, utf8_decode($this->solicitud->obs), 0, "L");
         $this->Ln();
     }
     $this->SetX(25);
     $this->SetFont('Arial', '', 10);
     $this->Cell(180, 4, "URES:     " . $this->solicitud->urg->urg . " " . utf8_decode($this->solicitud->urg->d_urg), 0, 2, "L");
     $this->Cell(180, 4, "Proyecto: " . $this->solicitud->proyecto->proyecto . " " . utf8_decode($this->solicitud->proyecto->d_proyecto), 0, 2, "L");
     $this->Cell(180, 4, "Fondo:     " . $this->solicitud->proyecto->fondos->first()->fondo, 0, 2, "L");
     $this->Ln();
     $this->SetFont('Arial', '', 10);
     $this->SetX(25);
     if (count($this->solicitud->objetivos) > 0) {
         $this->MultiCell(60, 5, "Desglose por Objetivo:", 1, 'C');
         $this->SetFont('CenturyGothic', '', '10');
         foreach ($this->solicitud->objetivos as $obj) {
             $this->SetX(25);
             $this->Cell(40, 5, $obj->objetivo, 1, 0, 'C');
             $this->Cell(20, 5, number_format($obj->pivot->monto, 2), 1, 1, 'R');
         }
     } else {
         $y_tabla_rm_inicio = $this->GetY();
         $this->SetFont('CenturyGothic', '', '10');
         $i = 0;
         foreach ($this->solicitud->rms as $rm) {
             switch ($i) {
                 case 0:
                     $this->SetXY(25, $y_tabla_rm_inicio);
                     $this->Cell(58, 5, "Desglose por RM/Cuenta", 1, 2, 'C');
                     break;
                 case 6:
                     $y_tabla_rm_fin = $this->GetY();
                     $this->SetXY(85, $y_tabla_rm_inicio);
                     $this->Cell(58, 5, "Desglose por RM/Cuenta", 1, 1, 'C');
                     break;
                 case 12:
                     $this->SetXY(145, $y_tabla_rm_inicio);
                     $this->Cell(58, 5, "Desglose por RM/Cuenta", 1, 1, 'C');
                     break;
             }
             if ($i < 6) {
                 $x_total = 25;
                 $this->SetX(25);
             } elseif ($i >= 6 || $i < 12) {
                 $x_total = 85;
                 $this->SetX(85);
             } else {
                 $x_total = 145;
                 $this->SetX(145);
             }
             $this->Cell(20, 5, $rm->rm, 1, 0, "C");
             $this->Cell(15, 5, $rm->cog->cog, 1, 0, "C");
             $this->Cell(23, 5, number_format($rm->pivot->monto, 2), 1, 1, "R");
             $i++;
         }
     }
     $this->SetFont('Arial', 'B', 10);
     $this->SetX($x_total);
     $this->Cell(35, 5, "TOTAL", 1, 0, "C");
     $this->SetFont('CenturyGothic', '', '10');
     $this->Cell(23, 5, number_format($this->solicitud->monto, 2), 1, 1, "R");
     $this->SetFont('Arial', '', 11);
     if ($i > 6) {
         $this->SetY($y_tabla_rm_fin);
     }
     $this->Ln();
     //Tabla Finanzas
     $this->SetFont('Arial', '', 9);
     $y_tabla = $this->GetY();
     $this->SetXY(25, $y_tabla);
     $this->MultiCell(180, 4, utf8_decode('Uso Exlusivo Finanzas Coordinación de Finanzas'), 1, 'C');
     $this->SetXY(25, $y_tabla + 4);
     //$pdf->MultiCell(30,4,"Tipo de Solicitud Capturada",1,'C');
     $this->SetXY(25, $y_tabla + 4);
     $this->MultiCell(30, 4, 'No. Documento AFIN', 1, 'C');
     $this->SetXY(55, $y_tabla + 4);
     $this->MultiCell(30, 4, 'No. Solicitud de Pago AFIN', 1, 'C');
     $this->SetXY(85, $y_tabla + 4);
     $this->MultiCell(30, 4, 'No. de Facturas AFIN', 1, 'C');
     $this->SetXY(115, $y_tabla + 4);
     $this->MultiCell(30, 4, "No. de Cheque\n ", 1, 'C');
     $this->SetXY(145, $y_tabla + 4);
     $this->MultiCell(30, 4, "No. Pago AFIN\n ", 1, 'C');
     $this->SetXY(175, $y_tabla + 4);
     $this->MultiCell(30, 4, utf8_decode('No. de Comprobación'), 1, 'C');
     $this->SetX(25);
     $this->Cell(30, 5, '', 1, 0, 'C');
     $this->Cell(30, 5, '', 1, 0, 'C');
     $this->Cell(30, 5, '', 1, 0, 'C');
     $this->Cell(30, 5, '', 1, 0, 'C');
     $this->Cell(30, 5, '', 1, 0, 'C');
     $this->Cell(30, 5, '', 1, 1, 'C');
     //Fin de Tabla
     $this->SetAutoPageBreak(true, 5);
     //Tabla Vo.Bo.'s
     $this->SetFont('Arial', '', 8);
     $this->SetXY(-60, -20);
     $this->Cell(30, 4, utf8_decode('Revisó'), 0, 0, 'C');
     $this->Cell(30, 4, 'Vo.Bo.', 0, 1, 'C');
     $this->SetX(-60);
     $this->Cell(30, 4, $usuario_presu->iniciales, 0, 0, 'C');
     $this->Cell(30, 4, $usuario_finanzas->iniciales, 0, 1, 'C');
     //Fin de Tabla
     //Footer no repetitivo por fecha y # de solicitud
     $solicita = User::find($this->solicitud->solicita);
     $this->SetY(-44);
     $this->SetFont('Arial', '', 10);
     $fecha_texto = Utility::fecha_texto($this->solicitud->fecha);
     //Verificar si el responsable del proyecto es el solicitante
     if ($this->solicitud->autoriza == $this->solicitud->solicita || $this->solicitud->autoriza == 0) {
         $this->Cell(190, 5, "A T E N T A M E N T E", 0, 1, "C");
         $this->SetFont('Arial', 'B', 10);
         $this->Cell(190, 4, utf8_decode("\"Piensa y Trabaja\""), 0, 1, 'C');
         //            if (!empty($LEYENDA)) {
         //                $this->SetFont('Arial','BI',10);
         //                $this->Cell(190,4,utf8_decode (""),0,1,'C');//Leyenda
         //            }
         $this->SetFont('Arial', '', 10);
         $this->Cell(190, 4, utf8_decode("Guadalajara, Jalisco, a " . $fecha_texto), 0, 1, 'C');
         $this->Ln(10);
         $this->MultiCell(190, 5, utf8_decode($solicita->prefijo . " " . $solicita->nombre), 0, 'C');
         $this->MultiCell(190, 5, utf8_decode($solicita->cargo), 0, 'C');
     } else {
         //Firma de solicitante y responsable
         $this->Cell(90, 5, "A T E N T A M E N T E", 10, 1, "L");
         $this->SetFont('Arial', 'B', 10);
         $this->Cell(90, 4, utf8_decode("\"Piensa y Trabaja\""), 0, 1, 'L');
         //            if (!empty($LEYENDA)) {
         //                $this->SetFont('Arial','BI',10);
         //                $this->Cell(90,4,utf8_decode ("$LEYENDA"),0,1,'L');
         //            }
         $this->SetFont('Arial', '', 10);
         $this->Cell(90, 4, utf8_decode("Guadalajara, Jalisco, a " . $fecha_texto), 0, 1, 'L');
         $this->Ln(11);
         $this->MultiCell(90, 5, utf8_decode($solicita->prefijo . " " . $solicita->nombre), 0, 'L');
         $this->MultiCell(90, 5, utf8_decode($solicita->cargo), 0, 'L');
         $autoriza = User::find($this->solicitud->autoriza);
         $this->SetXY(95, -20);
         $this->SetFont('Arial', '', 8);
         $this->Cell(65, 4, "AUTORIZA", 0, 2, "C");
         $this->MultiCell(65, 4, utf8_decode($autoriza->prefijo . " " . $autoriza->nombre), 0, 'C');
         $this->SetX(95);
         $this->MultiCell(65, 4, utf8_decode($autoriza->cargo), 0, 'C');
     }
     $this->SetFont('Arial', '', 7);
     $this->SetXY(-40, -10);
     $this->Cell(35, 4, "Solicitud SIGI #" . $this->solicitud->id, 0, 1, "R");
     $this->Output('Solicitud_' . $this->solicitud->id . '.pdf', 'I');
 }
示例#10
0
 public function getNombreRecibeAttribute()
 {
     return User::find($this->recibe)->nombre;
 }
 /**
  * Display the specified resource.
  *
  * @param  int  $id
  * @return Response
  */
 public function show($id)
 {
     $req = Req::find($id);
     $articulos = Articulo::whereReqId($id)->with('cotizaciones')->with('rms.cog')->get();
     $data['req'] = $req;
     $user = \Auth::user();
     $arr_roles = $user->roles()->lists('role_name')->all();
     $data['arr_roles'] = $arr_roles;
     if (array_search('Cotizador', $arr_roles) !== false || array_search('Adquisiciones', $arr_roles) !== false) {
         $usuarios_suministros = User::whereHas('roles', function ($query) {
             $query->whereIn('role_id', [4, 5]);
         })->where('id', '!=', Auth::user()->id)->orderBy('nombre')->lists('nombre', 'id')->all();
         $data['usuarios_suministros'] = $usuarios_suministros;
         $data['acciones_suministros'] = true;
     } else {
         $data['acciones_suministros'] = false;
     }
     if (array_search('Ejecutora', $arr_roles) !== false || array_search('Presupuesto', $arr_roles) !== false) {
         $data['acciones_presu'] = true;
     } else {
         $data['acciones_presu'] = false;
     }
     if (isset($articulos)) {
         $data['articulos'] = $articulos;
     } else {
         $data['articulos'] = array();
     }
     $articulos_helper = new ArticulosHelper($articulos, $id);
     $articulos_helper->setRmsArticulos();
     $data['rms_articulos'] = $articulos_helper->rms_articulos;
     $solicita = User::find($req->solicita);
     $data['solicita'] = $solicita;
     return view('reqs.infoRequisicion')->with($data);
 }