/**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function store()
 {
     $nombre = Input::get('nombre');
     $empresa = Input::get('empresa');
     $fecha = Input::get('fecha');
     $clienteid = Input::get('clienteid');
     $patrocinadorid = Input::get('patrocinadorid');
     $proposito_justificacion = Input::get('proposito_justificacion');
     $gerenteid = Input::get('gerenteid');
     $descripcion = Input::get('descripcion');
     $requisito_producto = Input::get('requisito_producto');
     $requisito_proyecto = Input::get('requisito_proyecto');
     $presupuesto_inicial = Input::get('presupuesto_inicial');
     $requisito_aprobacion = Input::get('requisito_aprobacion');
     $proyecto = new Proyecto();
     $proyecto->nombre = $nombre;
     $proyecto->empresa = $empresa;
     $proyecto->fecha = $fecha;
     $proyecto->clienteid = $clienteid;
     $proyecto->patrocinadorid = $patrocinadorid;
     $proyecto->proposito_justificacion = $proposito_justificacion;
     $proyecto->gerenteid = $gerenteid;
     $proyecto->descripcion = $descripcion;
     $proyecto->requisito_producto = $requisito_producto;
     $proyecto->requisito_proyecto = $requisito_proyecto;
     $proyecto->presupuesto_inicial = $presupuesto_inicial;
     $proyecto->requisito_aprobacion = $requisito_aprobacion;
     $proyecto->save();
     Session::flash('message', 'Registro guardado satisfactoriamente!');
     return Redirect::to('proyectos');
 }
 public function importarProyectos()
 {
     $proyectos_externos = $this->consultarProyectosExternos();
     if (count($proyectos_externos) > 0) {
         foreach ($proyectos_externos as $proyecto_nuevo) {
             $urg = \Urg::whereUrg($proyecto_nuevo->ures)->get(array('id'));
             $proyecto = new \Proyecto();
             $proyecto->proyecto = $proyecto_nuevo->proy;
             $proyecto->d_proyecto = $proyecto_nuevo->d_proy;
             $proyecto->monto = $proyecto_nuevo->monto;
             $proyecto->urg_id = $urg[0]->id;
             $proyecto->tipo_proyecto_id = 1;
             $proyecto->save();
         }
     }
 }
 public function store()
 {
     $importador = new \Gia\Classes\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');
 }
 /**
  * Creates a new model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  */
 public function actionCreate()
 {
     $model = new Proyecto();
     // Uncomment the following line if AJAX validation is needed
     // $this->performAjaxValidation($model);
     if (isset($_POST['Proyecto'])) {
         $model->attributes = $_POST['Proyecto'];
         if ($model->save()) {
             foreach ($_POST["Involucrados"] as $usuario) {
                 $proyectoUsuario = new UsuariosProyecto();
                 $proyectoUsuario->usuario_did = $usuario;
                 $proyectoUsuario->proyecto_did = $model->id;
                 $proyectoUsuario->estatus_did = 1;
                 $proyectoUsuario->save();
             }
             $this->redirect(array('view', 'id' => $model->id));
         }
     }
     $this->render('create', array('model' => $model));
 }
示例#5
0
 /**
  * Creates a new model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  */
 public function actionCreate()
 {
     $model = new Proyecto();
     $id = Yii::app()->request->getParam('id');
     $this->breadcrumbs = array('homeLink' => CHtml::link(Yii::t('zii', 'Proyecto'), array('proyecto/admin')), 'links' => array('Crear Nuevo'));
     if (isset($id)) {
         $model->empresa_id = $id;
         $this->menu_activo = 'empresa';
         $this->breadcrumbs = array('homeLink' => CHtml::link(Yii::t('zii', 'Empresa'), array('empresa/admin')), 'links' => array('Proyectos' => array('empresa/proyectos', 'id' => $id), 'Crear Nuevo'));
     }
     $local = new Localidad();
     $int = new JefeProyecto();
     $ext = new JefeProyecto();
     $user = new UsuarioAutoComplete();
     $tar = new TareaAutoComplete();
     $conf = new Configuracion();
     $internos = array();
     $externos = array();
     $internos[0] = $int;
     $externos[0] = $ext;
     $localidades[0] = $local;
     $usuarios[0] = $user;
     $tareas[0] = $tar;
     if (isset($_POST['Proyecto'])) {
         $model->attributes = $_POST['Proyecto'];
         $error = false;
         if (isset($_POST['interno'])) {
             foreach ($_POST['interno']['JefeProyecto'] as $index => $interno) {
                 $int = new JefeProyecto();
                 $int->attributes = $interno;
                 $int->validate();
                 $internos[$index] = $int;
                 if (count($int->getErrors()) > 0) {
                     $error = true;
                 }
             }
         }
         if (isset($_POST['externo'])) {
             foreach ($_POST['externo']['JefeProyecto'] as $index => $externo) {
                 $ext = new JefeProyecto();
                 $ext->attributes = $externo;
                 $ext->validate();
                 $externos[$index] = $ext;
                 if (count($ext->getErrors()) > 0) {
                     $error = true;
                 }
             }
         }
         if (isset($_POST['Localidad'])) {
             foreach ($_POST['Localidad'] as $index => $localidad) {
                 $local = new Localidad();
                 $local->attributes = $localidad;
                 $local->validate();
                 $localidades[$index] = $local;
                 if (count($local->getErrors()) > 0) {
                     $error = true;
                 }
             }
         }
         if (isset($_POST['Usuario'])) {
             foreach ($_POST['Usuario'] as $index => $usuario) {
                 $user = new UsuarioAutoComplete();
                 $user->attributes = $usuario;
                 $user->tipo_usuario_id = $usuario['tipo_usuario_id'];
                 $user->email = $usuario['email'];
                 $user->validate();
                 $usuarios[$index] = $user;
                 if (count($user->getErrors()) > 0) {
                     $error = true;
                 }
             }
         }
         if (isset($_POST['Tarea'])) {
             foreach ($_POST['Tarea'] as $index => $tarea) {
                 $tar = new TareaAutoComplete();
                 $tar->attributes = $tarea;
                 $tar->precio = $tarea['precio'];
                 $tar->tiempo = $tarea['tiempo'];
                 $tar->validate();
                 $tareas[$index] = $tar;
                 if (count($tar->getErrors()) > 0) {
                     $error = true;
                 }
             }
         }
         if ($model->validate() && $error == false) {
             if ($model->save()) {
                 $conf = new Configuracion();
                 $conf->unidades_red = isset($_POST['Configuracion']['unidades_red']) ? $_POST['Configuracion']['unidades_red'] : 0;
                 $conf->foto = isset($_POST['Configuracion']['foto']) ? $_POST['Configuracion']['foto'] : 0;
                 $conf->configuracion_red = isset($_POST['Configuracion']['configuracion_red']) ? $_POST['Configuracion']['configuracion_red'] : 0;
                 $conf->migracion = isset($_POST['Configuracion']['migracion']) ? $_POST['Configuracion']['migracion'] : 0;
                 $conf->proyecto_id = $model->id;
                 $conf->insert();
                 foreach ($internos as $interno) {
                     $interno->proyecto_id = $model->id;
                     $interno->tipo_jefe_proyecto_id = 1;
                     $interno->insert();
                 }
                 foreach ($externos as $externo) {
                     $externo->proyecto_id = $model->id;
                     $externo->tipo_jefe_proyecto_id = 2;
                     $externo->insert();
                 }
                 foreach ($localidades as $localidad) {
                     $localidad->proyecto_id = $model->id;
                     $localidad->insert();
                 }
                 foreach ($usuarios as $usuario) {
                     $user = new ProyectoHasUsuario();
                     $user->usuario_id = $usuario->id;
                     $user->proyecto_id = $model->id;
                     $user->insert();
                 }
                 foreach ($tareas as $tarea) {
                     $tar = new ProyectoHasTarea();
                     $tar->tarea_id = $tarea->id;
                     $tar->proyecto_id = $model->id;
                     $tar->insert();
                 }
                 $this->redirect(array('empresa/proyectos', 'id' => $model->empresa_id));
             }
         }
     }
     $this->render('create', array('model' => $model, 'localidades' => $localidades, 'internos' => $internos, 'externos' => $externos, 'usuarios' => $usuarios, 'id' => $id, 'listUsuarios' => $this->listUsuarios(), 'tareas' => $tareas, 'listTareas' => $this->listTareas(), 'configuracion' => $conf));
 }
 public function submit_create_proyecto()
 {
     if (Auth::check()) {
         $data["inside_url"] = Config::get('app.inside_url');
         $data["user"] = Session::get('user');
         $data["permisos"] = Session::get('permisos');
         if (in_array('side_nuevo_proyecto', $data["permisos"])) {
             // Validate the info, create rules for the inputs
             $rules = array('nombre' => 'required|min:2|max:100|unique:proyectos,nombre,NULL,idproyectos,deleted_at,NULL', 'jefe_proyecto' => 'required|min:2|max:100', 'concursos' => 'required');
             // Run the validation rules on the inputs from the form
             $validator = Validator::make(Input::all(), $rules);
             // If the validator fails, redirect back to the form
             if ($validator->fails()) {
                 return Redirect::to('concursos/create_proyecto')->withErrors($validator)->withInput(Input::all());
             } else {
                 // Creo primero a la persona
                 $proyecto = new Proyecto();
                 $proyecto->nombre = Input::get('nombre');
                 $proyecto->resenha = Input::get('resenha');
                 $proyecto->idconcursos = Input::get('concursos');
                 $proyecto->jefe_proyecto = Input::get('jefe_proyecto');
                 $proyecto->aprobacion = 0;
                 $proyecto->save();
                 // Creo al usuario y le asigno su información de persona
                 // Llamo a la función para registrar el log de auditoria
                 $descripcion_log = "Se creó el proyecto con id {{$proyecto->idproyectos}}";
                 Helpers::registrarLog(3, $descripcion_log);
                 Session::flash('message', 'Se registró correctamente el proyecto.');
                 return Redirect::to('concursos/create_proyecto');
             }
         } else {
             // Llamo a la función para registrar el log de auditoria
             $descripcion_log = "Se intentó acceder a la ruta '" . Request::path() . "' por el método '" . Request::method() . "'";
             Helpers::registrarLog(10, $descripcion_log);
             Session::flash('error', 'Usted no tiene permisos para realizar dicha acción.');
             return Redirect::to('/dashboard');
         }
     } else {
         return View::make('error/error');
     }
 }
 public function ejecutarAccionUsuario()
 {
     require_once 'lib/model/base/Accion.class.php';
     require_once 'lib/model/base/Proyecto.class.php';
     $idAccion = isset($_REQUEST['idAccion']) ? $_REQUEST['idAccion'] : null;
     $idProyecto = isset($_REQUEST['idProyecto']) ? $_REQUEST['idProyecto'] : null;
     if (isset($idAccion) && isset($idProyecto)) {
         $bind = Proyecto::find($idProyecto);
         $proyecto = new Proyecto($bind);
         $bindAccion = Accion::find($idAccion);
         $accion = new Accion($bindAccion);
         if ($idAccion == Accion::CONTABILIZAR) {
             $proyecto->idEstadoProyecto = $accion->idEstadoFinal;
             $proyecto->save();
             $proyecto->saveRespaldo();
         } elseif ($idAccion == Accion::APROBAR) {
             $proyecto->idEstadoProyecto = $accion->idEstadoFinal;
             $proyecto->save();
         }
         echo json_encode('El proyecto se encuentra ' . Proyecto::getEstado($idProyecto));
     } else {
         return false;
     }
 }
 /**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function store()
 {
     if (Auth::check()) {
         $data["inside_url"] = Config::get('app.inside_url');
         $data["user"] = Session::get('user');
         $dimensiones = Dimension::all()->count();
         // Verifico si el usuario es un Webmaster
         if ($data["user"]->idrol == 1 || $data["user"]->idrol == 2 || $data["user"]->idrol == 3 || $data["user"]->idrol == 4) {
             // Validate the info, create rules for the inputs
             $rules = array('id_reporte' => 'required', 'nombre' => 'required', 'categoria' => 'required', 'departamento' => 'required', 'responsable' => 'required', 'servicio_clinico' => 'required', 'fecha_ini' => 'required', 'fecha_fin' => 'required', 'proposito' => 'required', 'objetivos' => 'required', 'metodologia' => 'required', 'requerimientos' => 'required', 'asunciones' => 'required', 'restricciones' => 'required', 'riesgo_descs' => 'required', 'riesgo_tipos' => 'required', 'crono_descs' => 'required', 'crono_fechas_ini' => 'required', 'crono_fechas_fin' => 'required', 'crono_duraciones' => 'required', 'pre_descs' => 'required', 'pre_montos' => 'required', 'pers_nombres' => 'required', 'entidades' => 'required', 'apro_nombres' => 'required');
             $messages = array('fecha_ini.required' => 'El campo Fecha Inicio es requerido', 'fecha_fin.required' => 'El campo Fecha Final es requerido', 'riesgo_descs.required' => 'El campo descripcion de riesgos es requerido', 'riesgo_tipos.required' => 'El campo tipos de riesgos es requerido', 'crono_descs.required' => 'El campo descripcion de cronograma es requerido', 'crono_fechas_ini.required' => 'El campo fechas de inicio de cronograma es requerido', 'crono_fechas_fin.required' => 'El campo fechas de finales de cronograma es requerido', 'pre_descs.required' => 'El campo descripcion de presupuesto es requerido', 'pre_montos.required' => 'El campo montos de presupuesto es requerido', 'pers_nombres.required' => 'El campo nombres de personal es requerido', 'apro_nombres.required' => 'El campo nombres de aprobacion es requerido');
             // Run the validation rules on the inputs from the form
             $validator = Validator::make(Input::all(), $rules, $messages);
             // If the validator fails, redirect back to the form
             if ($validator->fails()) {
                 return Redirect::to('proyecto/create')->withErrors($validator)->withInput(Input::all());
             } else {
                 $proyecto = new Proyecto();
                 $proyecto->nombre = Input::get('nombre');
                 $proyecto->id_categoria = Input::get('categoria');
                 $proyecto->id_servicio_clinico = Input::get('servicio_clinico');
                 $proyecto->id_departamento = Input::get('departamento');
                 $proyecto->id_responsable = Input::get('responsable');
                 $proyecto->fecha_ini = date("Y-m-d", strtotime(Input::get('fecha_ini')));
                 $proyecto->fecha_fin = date("Y-m-d", strtotime(Input::get('fecha_fin')));
                 $proyecto->proposito = Input::get('proposito');
                 $proyecto->objetivos = Input::get('objetivos');
                 $proyecto->metodologia = Input::get('metodologia');
                 $proyecto->descripcion = Input::get('descripcion');
                 $proyecto->id_requerimiento = Input::get('id_reporte');
                 $proyecto->save();
                 $proyecto->codigo = 'P-' . date('Y') . '-' . $proyecto->id;
                 $proyecto->save();
                 $requerimientos = Input::get('requerimientos');
                 foreach ($requerimientos as $requerimiento) {
                     $proyecto_requerimiento = new ProyectoRequerimiento();
                     $proyecto_requerimiento->descripcion = $requerimiento;
                     $proyecto_requerimiento->id_proyecto = $proyecto->id;
                     $proyecto_requerimiento->save();
                 }
                 $asunciones = Input::get('asunciones');
                 foreach ($asunciones as $asuncion) {
                     $proyecto_asuncion = new ProyectoAsuncion();
                     $proyecto_asuncion->descripcion = $asuncion;
                     $proyecto_asuncion->id_proyecto = $proyecto->id;
                     $proyecto_asuncion->save();
                 }
                 $restricciones = Input::get('restricciones');
                 foreach ($restricciones as $restriccion) {
                     $proyecto_restriccion = new ProyectoRestriccion();
                     $proyecto_restriccion->descripcion = $restriccion;
                     $proyecto_restriccion->id_proyecto = $proyecto->id;
                     $proyecto_restriccion->save();
                 }
                 $pers_nombres = Input::get('pers_nombres');
                 foreach ($pers_nombres as $nombre) {
                     $proyecto_personal = new ProyectoPersonal();
                     $proyecto_personal->usuario = $nombre;
                     $proyecto_personal->id_proyecto = $proyecto->id;
                     $proyecto_personal->save();
                 }
                 $entidades = Input::get('entidades');
                 foreach ($entidades as $entidad) {
                     $proyecto_entidad = new ProyectoEntidad();
                     $proyecto_entidad->nombre = $entidad;
                     $proyecto_entidad->id_proyecto = $proyecto->id;
                     $proyecto_entidad->save();
                 }
                 $apro_nombres = Input::get('apro_nombres');
                 foreach ($apro_nombres as $nombre) {
                     $proyecto_aprobacion = new ProyectoAprobacion();
                     $proyecto_aprobacion->usuario = $nombre;
                     $proyecto_aprobacion->id_proyecto = $proyecto->id;
                     $proyecto_aprobacion->save();
                 }
                 $riesgo_descs = Input::get('riesgo_descs');
                 $riesgo_tipos = Input::get('riesgo_tipos');
                 foreach ($riesgo_descs as $key => $descripcion) {
                     $proyecto_riesgo = new ProyectoRiesgo();
                     $proyecto_riesgo->descripcion = $descripcion;
                     $proyecto_riesgo->tipo = $riesgo_tipos[$key];
                     $proyecto_riesgo->id_proyecto = $proyecto->id;
                     $proyecto_riesgo->save();
                 }
                 $crono_descs = Input::get('crono_descs');
                 $crono_fechas_ini = Input::get('crono_fechas_ini');
                 $crono_fechas_fin = Input::get('crono_fechas_fin');
                 $crono_duraciones = Input::get('crono_duraciones');
                 foreach ($crono_descs as $key => $descripcion) {
                     $proyecto_cronograma = new ProyectoCronograma();
                     $proyecto_cronograma->descripcion = $descripcion;
                     $proyecto_cronograma->fecha_ini = date('Y-m-d', strtotime($crono_fechas_ini[$key]));
                     $proyecto_cronograma->fecha_fin = date('Y-m-d', strtotime($crono_fechas_fin[$key]));
                     $proyecto_cronograma->duracion = $crono_duraciones[$key];
                     $proyecto_cronograma->id_proyecto = $proyecto->id;
                     $proyecto_cronograma->save();
                 }
                 $pre_descs = Input::get('pre_descs');
                 $pre_montos = Input::get('pre_montos');
                 foreach ($pre_descs as $key => $descripcion) {
                     $proyecto_presupuesto = new ProyectoPresupuesto();
                     $proyecto_presupuesto->descripcion = $descripcion;
                     $proyecto_presupuesto->monto = $pre_montos[$key];
                     $proyecto_presupuesto->id_proyecto = $proyecto->id;
                     $proyecto_presupuesto->save();
                 }
                 Session::flash('message', 'Se registró correctamente el proyecto.');
                 return Redirect::to('proyecto/create');
             }
         } else {
             return View::make('error/error', $data);
         }
     } else {
         return View::make('error/error', $data);
     }
 }