/** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create($doc_id, $doc_type) { $data['doc_id'] = $doc_id; $data['doc_type'] = $doc_type; if ($doc_type == 'Solicitud') { $solicitud = Solicitud::find($doc_id); } $rms = Rm::whereProyectoId($solicitud->proyecto_id)->get(); $data['rms'] = $rms; return view('retencion.formRetencion')->with($data); }
public function reporteEjercidoRms($proyecto_id) { $rms = Rm::whereProyectoId($proyecto_id)->get(['id']); $egresos_id = []; foreach ($rms as $rm) { $rm_obj = RM::find($rm->id); //Exlusión de egresos de vales comprobados $egresos_id_comprobados = $this->getEgresosComprobados($rm_obj); $egresos_query = $rm->egresos()->where('cuenta_id', 1); if (count($egresos_id_comprobados) > 0) { $egresos_query->whereNotIn('egresos.id', $egresos_id_comprobados); } $nvo = $egresos_query->get(['egresos.id'])->lists('id')->all(); $egresos_id = array_merge($egresos_id, $nvo); } $ejercido_rm = Egreso::whereIn('id', $egresos_id)->with('benef', 'cuenta', 'user')->get(); return $ejercido_rm; }
/** * Show the form for creating a new resource. * * @return Response */ public function create($id) { $solicitud = Solicitud::find($id); $data['solicitud'] = $solicitud; //Determina rm_id ya registrados en la solicitud para impedir cargos duplicados $arr_excluir = array(); $rms_registrados = $solicitud->rms; foreach ($rms_registrados as $rm_excluir) { $arr_excluir[] = $rm_excluir->id; } $rms = Rm::whereProyectoId($solicitud->proyecto_id)->whereNotIn('id', $arr_excluir)->get(); if (count($rms) > 0) { $rms->load('cog'); } else { return redirect()->back()->with('message', 'Todos los Recursos Materiales han sido asignados'); } $data['objetivos'] = []; $data['rms'] = $rms; return view('solicitudes.formSolRecurso')->with($data); }
/** * 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 importarSolicitudes() { $solicitudes_legacy = $this->consultarSolicitudesLegacy(); foreach ($solicitudes_legacy as $sol_legacy) { $benef = \DB::connection('legacy_benef')->table('tbl_benef')->where('benef_id', '=', $sol_legacy->benef_id)->value('benef'); $benef_id = Benef::whereBenef($benef)->pluck('id'); $proyecto = Proyecto::whereProyecto($sol_legacy->proy)->first(['id', 'urg_id']); //Determinar el ID del usuario solicitante $solicita_id = User::whereLegacyUsername($sol_legacy->solicita)->pluck('id'); //Determinar el usuario responsable if ($sol_legacy->responsable == 'Presupuesto') { $usuario = \InfoDirectivos::getResponsable('PRESU'); $user_id = $usuario->id; } elseif ($sol_legacy->responsable == 'Contabilidad') { $usuario = \InfoDirectivos::getResponsable('CONTA'); $user_id = $usuario->id; } elseif ($sol_legacy->responsable == 'Recepcion') { //Buscar primer usuario con rol recepcion $user_id = 2; } else { $user_id = User::whereLegacyUsername($sol_legacy->responsable)->pluck('id'); } if (empty($sol_legacy->inventariable)) { $inventariable = 0; } else { $inventariable = 1; } $sol_nueva = new Solicitud(); $sol_nueva->fecha = $sol_legacy->fecha; $sol_nueva->benef_id = $benef_id; $sol_nueva->tipo_solicitud = $sol_legacy->tipo_solicitud; $sol_nueva->urg_id = $proyecto->urg_id; $sol_nueva->proyecto_id = $proyecto->id; $sol_nueva->concepto = $sol_legacy->concepto; $sol_nueva->obs = $sol_legacy->obs . ' #SIGI: ' . $sol_legacy->solicitud_id; $sol_nueva->no_documento = $sol_legacy->no_documento; $sol_nueva->no_afin = $sol_legacy->id_afin; $sol_nueva->monto = $sol_legacy->monto; $sol_nueva->solicita = $solicita_id; $sol_nueva->estatus = $sol_legacy->estatus; $sol_nueva->user_id = $user_id; //responsable $sol_nueva->monto_pagado = $sol_legacy->monto_pagado; $sol_nueva->viaticos = $sol_legacy->viaticos; $sol_nueva->inventariable = $inventariable; $sol_nueva->save(); if ($sol_nueva->estatus != 'Cancelada') { if ($sol_legacy->tipo_solicitud != 'Vale') { $rms_solicitud = $this->consutlarRMs($sol_legacy->solicitud_id); foreach ($rms_solicitud as $rm_legacy) { $rm_id = Rm::whereRm($rm_legacy->rm)->value('id'); $sol_nueva->rms()->attach($rm_id, ['monto' => $rm_legacy->monto]); } } else { //Buscar si tiene capturado el objetivo $objs_solicitud = $this->consultarObjetivos($sol_legacy->solicitud_id); if (count($objs_solicitud) > 0) { foreach ($objs_solicitud as $obj_legacy) { $objetivo_id = Objetivo::whereObjetivo($obj_legacy->objetivo)->pluck('id'); if (empty($obj_legacy)) { dd($obj_legacy); } $sol_nueva->objetivos()->attach($objetivo_id, ['monto' => $obj_legacy->monto]); } } else { //Si no, asigna primer objetivo que encuentre en el proyecto $objetivo_id = Rm::whereProyectoId($sol_nueva->proyecto_id)->pluck('objetivo_id'); if (empty($objetivo_id->objetivo_id)) { $objetivo_id = 1; } $sol_nueva->objetivos()->attach($objetivo_id, ['monto' => $sol_nueva->monto]); } } } } }