public function importarReqs() { $reqs_legacy = $this->consultarReqsLegacy(); foreach ($reqs_legacy as $req_legacy) { if (!empty($req_legacy->proy)) { $proyecto = Proyecto::whereProyecto($req_legacy->proy)->get(['id', 'urg_id']); } else { $proyecto = Proyecto::where('proyecto', 'like', $req_legacy->proy_esp . '%')->get(['id', 'urg_id']); } //Determinar el ID del usuario solicitante $solicita_id = User::whereLegacyUsername($req_legacy->solicita)->pluck('id'); if (empty($solicita_id)) { $solicita_id = 2; } //Determinar el ID del usuario autoriza if (!empty($req_legacy->autoriza)) { $autoriza_id = User::whereLegacyUsername($req_legacy->autoriza)->pluck('id'); } else { $autoriza_id = 0; } if (empty($autoriza_id)) { $autoriza_id = 2; } //Determinar el usuario responsable if (!empty($req_legacy->responsable)) { $user_id = User::whereLegacyUsername($req_legacy->responsable)->pluck('id'); } else { $user_id = 0; } if (empty($user_id)) { $user_id = 2; } $test_req = Req::whereReq($req_legacy->req)->first(['req']); if (empty($test_req)) { $req_nueva = new Req(); $req_nueva->req = $req_legacy->req; $req_nueva->fecha_req = $req_legacy->fecha_req; if (count($proyecto) > 0) { $req_nueva->urg_id = $proyecto[0]->urg_id; $req_nueva->proyecto_id = $proyecto[0]->id; $req_nueva->etiqueta = $req_legacy->etiqueta; } else { $req_nueva->urg_id = 1; $req_nueva->proyecto_id = 1; $req_nueva->etiqueta = $req_legacy->etiqueta . ' #RevisarProy-URG'; } $req_nueva->lugar_entrega = $req_legacy->lugar_entrega; $req_nueva->obs = $req_legacy->obs; $req_nueva->solicita = $solicita_id; $req_nueva->autoriza = $autoriza_id; $req_nueva->estatus = $req_legacy->estatus; $req_nueva->user_id = $user_id; $req_nueva->tipo_cambio = $req_legacy->tc; $req_nueva->moneda = $req_legacy->moneda; $req_nueva->tipo_orden = $req_legacy->tipo_orden; $req_nueva->save(); } } }
/** * Store a newly created resource in storage. * * @return Response */ public function store(Request $request) { $urg_externa_id = $request->input('urg_externa_id'); $concepto = $request->input('concepto'); $tipo_compensa_externa = $request->input('tipo_compensa_externa'); $proyecto_id = $request->input('proyecto_id'); $proyecto = Proyecto::find($proyecto_id); $proyecto->load('fondos'); $documento_afin = $request->input('documento_afin'); if (empty($documento_afin)) { $documento_afin = 0; } $fecha = \Carbon\Carbon::now()->toDateString(); $compensa_rm = CompensaRm::create(['documento_afin' => $documento_afin, 'fecha' => $fecha, 'tipo' => 'Externa']); $monto_total = 0; if ($request->input('rm_aplicacion') > 0) { $j = 0; foreach ($request->input('rm_aplicacion') as $rm_aplicacion) { $monto_aplicacion = $request->input('monto_aplicacion')[$j]; if ($monto_aplicacion > 0) { if ($tipo_compensa_externa == 'Abono') { CompensaDestino::create(['compensa_rm_id' => $compensa_rm->id, 'rm_id' => $rm_aplicacion, 'monto' => $monto_aplicacion]); } if ($tipo_compensa_externa == 'Cargo') { CompensaOrigen::create(['compensa_rm_id' => $compensa_rm->id, 'rm_id' => $rm_aplicacion, 'monto' => $monto_aplicacion]); } $monto_total += $monto_aplicacion; } $j++; } } if ($request->input('monto_nuevo_rm')[0] > 0) { $rm_origen_id = $request->input('rm_origen')[0]; $rmOrigen = Rm::find($rm_origen_id); $k = 0; foreach ($request->input('rm_nuevo') as $rm_nuevo) { $rm = new Rm(); $rm->rm = $rm_nuevo; $rm->proyecto_id = $proyecto_id; $rm->objetivo_id = 1; $rm->actividad_id = 1; $rm->cog_id = $request->input('cog_nuevo')[$k]; $rm->fondo_id = $proyecto->fondos[0]->id; $rm->monto = 0; $rm->d_rm = 'Compensación #' . $compensa_rm->id; $rm->save(); $monto_nuevo_rm = $request->input('monto_nuevo_rm')[$k]; if ($monto_nuevo_rm > 0) { //Insertar en compsena_destinos CompensaDestino::create(['compensa_rm_id' => $compensa_rm->id, 'rm_id' => $rm->id, 'monto' => $monto_nuevo_rm]); $monto_total += $monto_nuevo_rm; } $k++; } } $compensa_rm->compensaExternas()->create(['urg_externa_id' => $urg_externa_id, 'concepto' => $concepto, 'tipo' => $tipo_compensa_externa, 'monto' => $monto_total]); return redirect()->action('CompensaExternaController@index'); }
public function reporteEjercido() { $proyecto = Proyecto::findOrFail($this->proyecto_id); $ejercido = $proyecto->egresos()->where('cuenta_id', 1)->with('benef', 'cuenta', 'user')->get(); /** * @todo Descontar "Cargos" existentes en Pólizas */ return $ejercido; }
/** * Store a newly created resource in storage. * * @return Response */ public function store(Request $request) { $proyecto_id_destino = $request->input('proyecto_id_destino'); $proyecto_destino = Proyecto::find($proyecto_id_destino); $proyecto_destino->load('fondos'); $documento_afin = $request->input('documento_afin'); if (empty($documento_afin)) { $documento_afin = 0; } $fecha = \Carbon\Carbon::now()->toDateString(); $compensa_rm = CompensaRm::create(['documento_afin' => $documento_afin, 'fecha' => $fecha, 'tipo' => 'Interna']); $monto_total = 0; $i = 0; foreach ($request->input('rm_origen') as $rm_origen) { $monto_origen = $request->input('monto_origen')[$i]; if ($monto_origen > 0) { //Insertar en compsena_orgienes CompensaOrigen::create(['compensa_rm_id' => $compensa_rm->id, 'rm_id' => $rm_origen, 'monto' => $monto_origen]); } $i++; } $j = 0; foreach ($request->input('rm_destino') as $rm_destino) { $monto_destino = $request->input('monto_destino')[$j]; if ($monto_destino > 0) { //Insertar en compsena_destinos CompensaDestino::create(['compensa_rm_id' => $compensa_rm->id, 'rm_id' => $rm_destino, 'monto' => $monto_destino]); } $j++; } if ($request->input('monto_nuevo_rm')[0] > 0) { $rm_origen_id = $request->input('rm_origen')[0]; $rmOrigen = Rm::find($rm_origen_id); $k = 0; foreach ($request->input('rm_nuevo') as $rm_nuevo) { $rm = new Rm(); $rm->rm = $rm_nuevo; $rm->proyecto_id = $proyecto_id_destino; $rm->objetivo_id = $request->input('objetivo_destino'); $rm->actividad_id = 1; $rm->cog_id = $request->input('cog_nuevo')[$k]; $rm->fondo_id = $proyecto_destino->fondos[0]->id; $rm->monto = 0; $rm->d_rm = 'Compensación #' . $compensa_rm->id; $rm->save(); $monto_nuevo_rm = $request->input('monto_nuevo_rm')[$k]; if ($monto_nuevo_rm > 0) { //Insertar en compsena_destinos CompensaDestino::create(['compensa_rm_id' => $compensa_rm->id, 'rm_id' => $rm->id, 'monto' => $monto_nuevo_rm]); } $k++; } } return redirect()->action('CompensaProyectosController@index'); }
public static function getUserAutoriza($proyecto_id) { $urg_id = Proyecto::find($proyecto_id)->urg_id; $urg = Urg::find($urg_id); $cargo = $urg->cargos()->where('fin', '=', '0000-00-00')->first(array('user_id')); if ($cargo !== null) { $user_id = $cargo->user_id; } else { $user_id = 0; } return $user_id; }
private function registrarProyectoEgreso($gxc) { //Determinar proyecto_id $proyecto_id = Proyecto::where('proyecto', 'LIKE', $gxc->proy)->pluck('id'); //Enconrar egreso_id $cuenta_bancaria_id = $this->getCuentaBancariaId($gxc->cta_b); if (!empty($cuenta_bancaria_id)) { $query_egreso = Egreso::where('cuenta_bancaria_id', '=', $cuenta_bancaria_id); if ($gxc->tipo == 'ch') { $query_egreso->where('cheque', '=', $gxc->poliza); $legacy_fecha = \DB::connection($this->db_origen)->table('tbl_cheques')->where('cta_b', $gxc->cta_b)->where('cheque', $gxc->poliza)->pluck('fecha'); } else { $query_egreso->where('poliza', '=', $gxc->poliza); $legacy_fecha = \DB::connection($this->db_origen)->table('tbl_egresos')->where('cta_b', $gxc->cta_b)->where('egreso_id', $gxc->poliza)->pluck('fecha'); } $query_egreso->where('fecha', $legacy_fecha); $egreso = $query_egreso->first(); if (empty($egreso->id)) { dd('Egreso no encontrado ' . $gxc->poliza); } //Crear Relación $egreso->proyectos()->attach($proyecto_id, ['monto' => round($gxc->monto, 2)]); } }
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]); } } } } }
public function validarOperacion() { $operacion = true; $hoy = \Carbon\Carbon::today()->toDateString(); if (!$this->proyecto_id) { if ($this->modelo == 'Req') { $this->proyecto_id = Req::where('id', $this->documento_id)->pluck('proyecto_id'); } elseif ($this->modelo == 'Solicitud') { $this->proyecto_id = Solicitud::where('id', $this->documento_id)->pluck('proyecto_id'); } } $proyecto = Proyecto::find($this->proyecto_id); if (empty($proyecto)) { return false; } $op_restrigindas = OpRestringida::where('aaaa', $proyecto->aaaa)->where('modelo', $this->modelo)->whereNested(function ($query) use($hoy) { $query->where('inicio', '<=', $hoy); // $query->where('fin', '>=', $hoy); })->whereNested(function ($query) use($proyecto) { $query->orWhere(function ($q) use($proyecto) { $q->where('aplica_type', 'Guia\\Models\\TipoProyecto'); $q->where('aplica_id', $proyecto->tipo_proyecto_id); }); $query->orWhere(function ($q) use($proyecto) { $q->where('aplica_type', 'Guia\\Models\\Urg'); $q->where('aplica_id', $proyecto->urg_id); }); $query->orWhere(function ($q) use($proyecto) { $q->where('aplica_type', 'Guia\\Models\\Proyecto'); $q->where('aplica_id', $proyecto->id); }); })->get(); if (count($op_restrigindas) > 0) { $operacion = false; $this->op_restringida = $op_restrigindas[0]; foreach ($op_restrigindas as $restriccion) { $excepcion = OpExcepcion::where('op_restringida_id', $restriccion->id)->whereNested(function ($query) use($hoy) { $query->where('inicio', '<=', $hoy); $query->where('fin', '>=', $hoy); })->whereNested(function ($query) use($proyecto) { $query->orWhere(function ($q) use($proyecto) { $q->where('aplica_type', 'Guia\\Models\\TipoProyecto'); $q->where('aplica_id', $proyecto->tipo_proyecto_id); }); $query->orWhere(function ($q) use($proyecto) { $q->where('aplica_type', 'Guia\\Models\\Urg'); $q->where('aplica_id', $proyecto->urg_id); }); $query->orWhere(function ($q) use($proyecto) { $q->where('aplica_type', 'Guia\\Models\\Proyecto'); $q->where('aplica_id', $proyecto->id); }); $query->orWhere(function ($q) { $q->where('aplica_type', 'Guia\\User'); $q->where('aplica_id', \Auth::user()->id); }); })->get(); if (count($excepcion) > 0) { $operacion = true; } } } return $operacion; }
/** * Display the specified resource. * * @return Response */ public function show() { //$fileName = storage_path().'\app\proyectos\temp.txt'; //Windows //$fileName = str_replace('/', '\\',$fileName); //Windows $fileName = storage_path() . '/app/proyectos/temp.txt'; $importador = new ImportadorProyecto($fileName); $importador->extraer(); /** * @todo Verificar existencia de todos los campos */ $verifica_proy = Proyecto::whereProyecto($importador->proy)->get(); $data['verifica_proy'] = $verifica_proy; $data['proyecto'] = $importador->proy; $data['d_proyecto'] = $importador->d_proyecto; $data['urg'] = $importador->urg; $data['d_urg'] = $importador->d_urg; $data['fondo'] = $importador->fondo; $data['d_fondo'] = $importador->d_fondo; $data['monto'] = $importador->monto_proy; $data['aaaa'] = $importador->aaaa; $data['inicio'] = $importador->inicio; $data['fin'] = $importador->fin; $data['partidas'] = $importador->arr_recursos; return view('admin.proyectos.importPreview')->with($data); }
/** * Display a listing of the resource. * * @return Response */ public function index() { $proyectos = Proyecto::with('urg')->with('tipoProyecto')->get(); return view('admin.proyectos.index', compact('proyectos')); }
public function actualizarDerechosFext() { $proyectos_fext = \DB::connection($this->db_origen)->table('t_proyectos')->get(['proy', 'usr']); foreach ($proyectos_fext as $proyecto_fext) { $proyecto = Proyecto::where('proyecto', '=', $proyecto_fext->proy)->first(['id']); $user = User::where('legacy_username', '=', $proyecto_fext->usr)->first(); if (!empty($user) && !empty($proyecto)) { $acceso = new Acceso(['acceso_id' => $proyecto->id, 'acceso_type' => 'Guia\\Models\\Proyecto']); $user->accesos()->save($acceso); } } }
public function getIdsProyectos() { $arr_id_proyectos = array(); $arr_id_proyectos = Proyecto::acceso($this->user_id, $this->presupuesto)->lists('id')->all(); return $arr_id_proyectos; }
Route::group(array('prefix' => 'api', 'middleware' => ['auth']), function () { Route::get('/rm-dropdown/', function () { $proyecto_id = \Input::get('proyecto_id'); $rms = \Guia\Models\Rm::where('proyecto_id', '=', $proyecto_id)->get(['rm', 'id']); return response()->json($rms); }); Route::get('/proyectos-dropdown/', function () { $arr_proyectos = \FiltroAcceso::getArrProyectos(); foreach ($arr_proyectos as $k => $v) { $proyectos[] = ['id' => $k, 'proyecto_descripcion' => $v]; } return response()->json($proyectos); }); Route::get('/egresos-proyecto/', function () { $proyecto_id = \Input::get('proyecto_id'); $egresos = \Guia\Models\Proyecto::findOrFail($proyecto_id)->egresos()->with('benef', 'cuentaBancaria', 'cuenta', 'user')->with('rms.cog')->get(); return response()->json($egresos); }); Route::get('/egresos-benef/', function () { $benef_id = \Input::get('benef_id'); $egresos = \Guia\Models\Benef::findOrFail($benef_id)->egresos()->with('benef')->with('cuentaBancaria')->with('cuenta')->with('user')->get(); return response()->json($egresos); }); Route::get('/benef-search/', function () { $benef_search = \Input::get('term'); $benefs = \Guia\Models\Benef::where('benef', 'LIKE', '%' . $benef_search . '%')->orderBy('benef')->get(['benef']); foreach ($benefs as $benef) { $arr_benefs[] = ['value' => $benef->benef]; } return response()->json($arr_benefs); });