/** * Store a newly created resource in storage. * * @return Response */ public function store() { $importador = new ImportadorProyecto('/uploads/proyectos/temp.txt'); $importador->extraer(); $urg = Urg::whereUrg($importador->urg)->get(array('id')); $fondo = Fondo::whereFondo($importador->fondo)->get(array('id')); $arr_inicio = explode("/", $importador->inicio); $arr_fin = explode("/", $importador->fin); $proyecto = new Proyecto(); $proyecto->proyecto = $importador->proy; $proyecto->d_proyecto = $importador->d_proyecto; $proyecto->monto = $importador->monto_proy; $proyecto->urg_id = $urg[0]->id; $proyecto->tipo_proyecto_id = 1; $proyecto->aaaa = $importador->aaaa; $proyecto->inicio = $arr_inicio[2] . "-" . $arr_inicio[1] . "-" . $arr_inicio[0]; $proyecto->fin = $arr_fin[2] . "-" . $arr_fin[1] . "-" . $arr_fin[0]; $proyecto->save(); //Inserta datos @fondo_proyecto $proyecto->fondos()->attach($fondo[0]->id); $arr_objetivos = array(); foreach ($importador->arr_recursos as $partida => $val) { //Buscar objetivo en key del arreglo $objetivo_id = array_search($val['objetivo'], $arr_objetivos); //Si no se encuentra if (empty($objetivo_id)) { $objetivo = new Objetivo(); $objetivo->objetivo = $val['objetivo']; $objetivo->d_objetivo = $val['d_objetivo']; $objetivo->save(); $objetivo_id = $objetivo->id; $arr_objetivos[$objetivo->id] = $val['objetivo']; } $cog = Cog::whereCog($val['cog'])->get(); $rm = new Rm(); $rm->rm = $partida; $rm->proyecto_id = $proyecto->id; $rm->objetivo_id = $objetivo_id; $rm->actividad_id = 1; $rm->cog_id = $cog[0]->id; $rm->fondo_id = $fondo[0]->id; $rm->monto = $val['monto']; $rm->d_rm = ""; $rm->save(); } return redirect()->action('ProyectosController@index'); }
public function importarRms() { $rms_externos = $this->consultarRmsExternos(); if (count($rms_externos) > 0) { foreach ($rms_externos as $rm_nuevo) { $proyecto = Proyecto::whereProyecto($rm_nuevo->proy)->get(array('id')); $cog = Cog::whereCog($rm_nuevo->cta)->get(['id']); $fondo = Fondo::whereFondo($rm_nuevo->fondo)->get(array('id')); if (count($cog) == 0 || count($fondo) == 0 || count($proyecto) == 0) { dd('RM c/error: ' . $rm_nuevo->rm); } $rms = new Rm(); $rms->rm = $rm_nuevo->rm; $rms->proyecto_id = $proyecto[0]->id; if (empty($rm_nuevo->objetivo)) { $rms->objetivo_id = 1; } else { $obj = Objetivo::whereObjetivo($rm_nuevo->objetivo)->get(['id']); if (count($obj) == 0) { $objetivo = new Objetivo(); $objetivo->objetivo = $rm_nuevo->objetivo; $objetivo->save(); $rms->objetivo_id = $objetivo->id; } else { $rms->objetivo_id = $obj[0]->id; } } if (empty($rm_nuevo->actividad)) { $rms->actividad_id = 1; } else { $act = Actividad::whereActividad($rm_nuevo->actividad)->get(['id']); if (count($act) == 0) { $actividad = new Actividad(); $actividad->actividad = $rm_nuevo->actividad; $actividad->save(); $rms->actividad_id = $actividad->id; } else { $rms->actividad_id = $act[0]->id; } } $rms->cog_id = $cog[0]->id; $rms->fondo_id = $fondo[0]->id; $rms->monto = $rm_nuevo->monto; $rms->d_rm = ''; $rms->save(); } } }