/** * 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 importarProyectos() { $proyectos_externos = $this->consultarProyectosExternos(); if (count($proyectos_externos) > 0) { foreach ($proyectos_externos as $proyecto_nuevo) { $urg_id = Urg::whereUrg($proyecto_nuevo->ures)->pluck('id'); if (empty($urg_id)) { dd('La URES no existe: ' . $proyecto_nuevo->ures); } $proyecto = new Proyecto(); $proyecto->proyecto = $proyecto_nuevo->proy; $proyecto->d_proyecto = $proyecto_nuevo->d_proy; $proyecto->monto = $proyecto_nuevo->monto; $proyecto->urg_id = $urg_id; $proyecto->tipo_proyecto_id = $this->tipo_proyecto_id; $proyecto->save(); $proyecto_fondo = \DB::connection($this->db_origen)->table('tbl_proyecto_fondo')->where('proy', '=', $proyecto_nuevo->proy)->get(); foreach ($proyecto_fondo as $pf) { $fondo_id = Fondo::whereFondo($pf->fondo)->pluck('id'); $proyecto->fondos()->attach($fondo_id); } } } }