/**
  * 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');
 }
Пример #2
0
 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);
             }
         }
     }
 }