示例#1
0
 public function actionUpdate($id)
 {
     $model = $this->loadModel($id);
     if (isset($model->iddomicilio)) {
         $modelDomicilio = $model->iddomicilio0;
     } else {
         $modelDomicilio = new Domicilio();
     }
     if (isset($_POST['Osplan'])) {
         $model->setAttributes($_POST['Osplan']);
         $model->iddomicilio = null;
         try {
             if (strlen($_POST['Domicilio']['calle']) != 0) {
                 $modelDomicilio->setAttributes($_POST['Domicilio']);
                 $modelDomicilio->iddomiciliotipo = Domiciliotipo::PARTICULAR;
                 if ($modelDomicilio->save()) {
                     $model->iddomicilio = $modelDomicilio->iddomicilio;
                 } else {
                     throw new Exception("Hubo un error al grabar el domicilio de entrega");
                 }
             }
             if ($model->save()) {
                 $this->setFlash('notice', array('title' => 'Mensaje', 'content' => 'Se actualizó correctamente.'));
                 $this->redirect(array('manage'));
             }
         } catch (Exception $e) {
             $model->addError('', $e->getMessage());
         }
     }
     $this->render('update', array('model' => $model, 'modelDomicilio' => $modelDomicilio));
 }
 public function actionCreate()
 {
     $model = new Osfacturacion();
     $modelDomicilio = new Domicilio();
     if (isset($_POST['Osfacturacion'], $_POST['Domicilio'])) {
         $model->setAttributes($_POST['Osfacturacion']);
         $model->nombre = strtoupper($model->nombre);
         $modelDomicilio->setAttributes($_POST['Domicilio']);
         $modelDomicilio->iddomiciliotipo = Domiciliotipo::PARTICULAR;
         $transac = Yii::app()->db->beginTransaction();
         try {
             if ($modelDomicilio->save()) {
                 $model->iddomicilio = $modelDomicilio->iddomicilio;
                 if ($model->save()) {
                     $transac->commit();
                     $this->redirect(array('view', 'id' => $model->idosfacturacion));
                 } else {
                     throw new Exception("Hubo un error al grabar la OOSS");
                 }
             } else {
                 throw new Exception("Hubo un error al grabar el domicilio");
             }
         } catch (Exception $e) {
             $model->addError('', $e->getMessage());
             $transac->rollback();
         }
     }
     $this->render('create', array('model' => $model, 'modelDomicilio' => $modelDomicilio));
 }
 /**
  * Creates a new model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  */
 public function actionCreate()
 {
     $model = new Domicilio();
     // Uncomment the following line if AJAX validation is needed
     // $this->performAjaxValidation($model);
     if (isset($_POST['Domicilio'])) {
         $model->attributes = $_POST['Domicilio'];
         if ($model->save()) {
             $this->redirect(array('view', 'id' => $model->id));
         }
     }
     $this->render('create', array('model' => $model));
 }
示例#4
0
 public function actionCreateProfesional()
 {
     // Instancio modelos que se van a usar en el formulario
     $model = new Profesional();
     $model_conyuge = new Conyuge();
     $model_domicilioprofesional = new Domicilioprofesional();
     $model_contacto = new Contacto();
     $model_domicilio = new Domicilio();
     $modellocalidad = new Localidad();
     $model_datoimpositivo = new Datoimpositivo();
     if (isset($_POST['Profesional'], $_POST['Domicilio'])) {
         $model->setAttributes($_POST['Profesional']);
         $model->idlocalidad = isset($_POST['Localidad']['idlocalidad']) ? $_POST['Localidad']['idlocalidad'] : null;
         $model_domicilio->setAttributes($_POST['Domicilio']);
         $model_domicilio->iddomiciliotipo = Domiciliotipo::PARTICULAR;
         try {
             $transac = Yii::app()->db->beginTransaction();
             // si se carga conyuge, este modelo es opcional en el formulario
             if (strlen($_POST['Conyuge']['apellido']) != 0) {
                 $model_conyuge->setAttributes($_POST['Conyuge']);
                 if ($model_conyuge->save()) {
                     $model->idconyuge = $model_conyuge->idconyuge;
                 } else {
                     throw new Exception("Hubo un error al grabar datos del Cónyuge");
                 }
             }
             if ($model->validate() && $model_domicilio->validate()) {
                 // estos dos modelos del formulario son obligatorios
                 // si se cargan datos impositivos
                 if (strlen($_POST['Datoimpositivo']['cuit']) != 0) {
                     $model_datoimpositivo->setAttributes($_POST['Datoimpositivo']);
                     if ($model_datoimpositivo->save()) {
                         $model->iddatoimpositivo = $model_datoimpositivo->iddatoimpositivo;
                     } else {
                         throw new Exception("Hubo un error al grabar datos impositivos del Profesional");
                     }
                 }
                 if ($model->save(false)) {
                     $model_domicilio->identidad = $model->identidad;
                 } else {
                     throw new Exception("Hubo un error al grabar datos del Profesional");
                 }
                 if (!$model_domicilio->save(false)) {
                     throw new Exception("Hubo un error al grabar datos del Domicilio");
                 }
                 $transac->commit();
                 // segun boton de grabar o agregar domicilios
                 if (isset($_POST['savebutton'])) {
                     $this->redirect(array('manageProfesional'));
                 } else {
                     // se usó boton domicilio, se redirige  a la vista update para cargar domicilios
                     $this->redirect(array('updateProfesional', 'id' => $model->identidad, "opendialog" => true));
                     // redirecciona a update para permitir cargar contactos
                 }
             }
         } catch (Exception $e) {
             $transac->rollback();
             $model->addError('', $e->getMessage());
         }
     }
     $this->render('create_profesional', array('model' => $model, 'model_conyuge' => $model_conyuge, 'model_domicilio' => $model_domicilio, 'model_domicilioprofesional' => $model_domicilioprofesional, 'model_datoimpositivo' => $model_datoimpositivo, 'model_contacto' => $model_contacto, 'modellocalidad' => $modellocalidad, 'opendialog' => false));
 }
示例#5
0
 public function actionUpdate($id)
 {
     $model = $this->loadModel($id);
     $modelDomicilio = new Domicilio();
     $modellocalidad = new Localidad();
     // Traigo los parámetros de la carga según el id del plan
     $models_parametros_carga = Parametrocarga::model()->getParametros($id);
     $model_campos_carga = new Carga();
     // campos que son para carga de archivos de modalidad
     $modalidades = array("modalidadapertura", "modalidadcarga", "modalidadfacturacion", "modalidadoperativa");
     //modelo nomenclador plan
     $modelnomenplan = new Nomencladorplan();
     //asignar idosplan para cargar el nomenclador del plan
     $modelnomenplan->idosplan = $model->idosplan;
     if (isset($_POST['Osplan'])) {
         $model->setAttributes($_POST['Osplan']);
         if ($_POST['Osplan']['iddomicilio'] == '0') {
             $model->iddomicilio = null;
         }
         try {
             $transac = Yii::app()->db->beginTransaction();
             if (strlen($_POST['Domicilio']['calle']) != 0) {
                 $modelDomicilio->setAttributes($_POST['Domicilio']);
                 $modelDomicilio->idlocalidad = $_POST['Localidad']['idlocalidad'];
                 $modelDomicilio->iddomiciliotipo = Domiciliotipo::PARTICULAR;
                 if ($modelDomicilio->save()) {
                     $model->iddomicilio = $modelDomicilio->iddomicilio;
                 } else {
                     throw new Exception("Hubo un error al grabar el domicilio de entrega");
                 }
             }
             // archivos de modalidad subidos
             // si se envia desde el formulario, se asigna y
             // se graba. El nombre del archivo esta definido en el modelo osplan->archivomodalidadd()
             foreach ($modalidades as $modalidad) {
                 if (CUploadedFile::getInstance($model, $modalidad) !== null) {
                     $model->{$modalidad} = CUploadedFile::getInstance($model, $modalidad);
                     $model->{$modalidad}->saveAs($model->archivomodalidad($modalidad));
                 }
             }
             // si se selecciona el checkbox de borrar archivo de modalidad
             foreach ($modalidades as $modalidad) {
                 if (isset($_POST['borrar' . $modalidad])) {
                     $model->{$modalidad} = NULL;
                     @unlink($model->archivomodalidad($modalidad));
                 }
             }
             if ($model->save()) {
                 if (isset($_POST['Parametrocarga'])) {
                     $hayerror = false;
                     foreach ($_POST['Parametrocarga'] as $i => $item) {
                         $model_parametro_carga = $models_parametros_carga[$i];
                         // Asigno el modelo
                         $model_parametro_carga->setAttributes($_POST['Parametrocarga'][$i]);
                         // 04/05/2015 JMG Almaceno todos los campos, incluidos los no editables pero estos
                         // pueden ser obligatorios o no dependiendo de la metadata de la bd
                         if ($model_campos_carga->getMetaData()->columns[$model_parametro_carga->campo]->comment == "NOEDITABLE") {
                             if ($model_campos_carga->getMetaData()->columns[$model_parametro_carga->campo]->allowNull) {
                                 $model_parametro_carga->idopcioncampocarga = Opcioncampocarga::OPCIONAL;
                             } else {
                                 $model_parametro_carga->idopcioncampocarga = Opcioncampocarga::OBLIGATORIO;
                             }
                         }
                         $model_parametro_carga->idosplan = $model->idosplan;
                         if (!$model_parametro_carga->save()) {
                             $hayerror = true;
                         }
                     }
                     if ($hayerror) {
                         throw new Exception("Error al grabar parametros");
                     }
                 }
                 // NOMENCLADOR
                 // borrar nomenclador
                 if (isset($_POST['borrarnomenclador'])) {
                     try {
                         Nomencladorplan::model()->deleteAllByAttributes(array('idosplan' => $id));
                     } catch (Exception $e) {
                         throw new CHttpException(500, $e->getMessage());
                     }
                     // grabar todo y redirigir a manage
                     $transac->commit();
                     $this->setFlash('notice', array('title' => 'Mensaje', 'content' => 'Se actualizó correctamente.'));
                     $this->redirect(array('manage'));
                 }
                 // borrar practicas seleccionadas
                 if (isset($_POST['id-borrar'])) {
                     $ids = $_POST['id-borrar'];
                     // arreglo con las idpracticas a borrar
                     try {
                         Nomencladorplan::model()->deleteAllByAttributes(array('idnomencladorplan' => $ids));
                     } catch (Exception $e) {
                         throw new CHttpException(500, $e->getMessage());
                     }
                     // grabar todo y redirigir a manage
                     $transac->commit();
                     $this->setFlash('notice', array('title' => 'Mensaje', 'content' => 'Se actualizó correctamente.'));
                     $this->redirect(array('manage'));
                 }
                 //                            else {
                 // ARMADO de Nomenclador: grabar en tabla nomencladorplan
                 $marcatodas = false;
                 $rango = false;
                 // si se seleccionó un momenclador, la variable  idnomenclador es true
                 // y se analizan las variables de resto del formulario
                 // para armar el nomenclador.
                 // si no se manda idnomenclador, es porque se actualizan datos del osplan
                 // pero no se arma nomenclador
                 if ($_POST['idnomenclador'] == true) {
                     $idnomenclador = $_POST['idnomenclador'];
                     // filtro de tipo de practicas
                     $idpractipo = isset($_POST['idpractipo']) ? $_POST['idpractipo'] : false;
                     // controlar si seleccionaron  rangos
                     if (isset($_POST['rangodesde']) && isset($_POST['rangohasta'])) {
                         $rango = true;
                         $rangodesde = $_POST['rangodesde'];
                         $rangohasta = $_POST['rangohasta'];
                         //                            // controlar que no este vacio algun rango
                         if (in_array('', $rangodesde)) {
                             $rango = false;
                         }
                         if (in_array('', $rangohasta)) {
                             $rango = false;
                         }
                         //error de rango
                         if (!$rango) {
                             throw new Exception("Error en el rango de prácticas");
                         }
                     }
                     // todas las practicas seleccionadas
                     // si se marca, se anula el rango.
                     // y se seleccionan todas.
                     if (isset($_POST['marcatodas'])) {
                         $marcatodas = true;
                         $rango = false;
                     }
                     //  en caso de seleccionar todas
                     if ($marcatodas) {
                         // $idpracticas es un arreglo de idpracticas encontradas
                         $idpracticas = Practica::model()->search3($idnomenclador, $idpractipo);
                         foreach ($idpracticas as $key => $value) {
                             $modelnomencladorplan = new nomencladorplan();
                             $modelnomencladorplan->idosplan = $model->idosplan;
                             $modelnomencladorplan->idpractica = $value;
                             // grabar registro en tabla nomencladorplan
                             $modelnomencladorplan->save();
                         }
                     }
                     //  en caso de seleccionar por rango
                     if ($rango) {
                         // $idpracticas es un arreglo de idpracticas encontradas
                         foreach ($rangodesde as $key => $valordesde) {
                             $idpracticas = Practica::model()->search4($valordesde, $rangohasta[$key], $idpractipo);
                             if (!$idpracticas) {
                                 throw new Exception("Error en el rango de prácticas");
                             }
                             foreach ($idpracticas as $key => $value) {
                                 $modelnomencladorplan = new nomencladorplan();
                                 $modelnomencladorplan->idosplan = $model->idosplan;
                                 $modelnomencladorplan->idpractica = $value;
                                 // grabar registro en tabla nomencladorplan
                                 $modelnomencladorplan->save();
                             }
                         }
                     }
                 }
                 // grabar todo y redirigir a manage
                 $transac->commit();
                 $this->setFlash('notice', array('title' => 'Mensaje', 'content' => 'Se actualizó correctamente.'));
                 $this->redirect(array('manage'));
             }
         } catch (Exception $e) {
             $transac->rollback();
             $model->addError('', $e->getMessage());
         }
     }
     $this->render('update', array('model' => $model, 'modelDomicilio' => $modelDomicilio, 'modellocalidad' => $modellocalidad, 'models_parametros_carga' => $models_parametros_carga, 'model_campos_carga' => $model_campos_carga, 'modelnomenplan' => $modelnomenplan));
 }
示例#6
0
    $partidodeptoActual = $partidodeptoActual->Descripcion(strtoupper($_POST["partido_depto"]));
    $partidodeptoActual->save();

    $domicilioActual = new Domicilio();
    $domicilioActual->barrio = strtoupper($_POST["barrio"]);
    $domicilioActual->nro_calle = strtoupper($_POST["nro_calle"]);
    $domicilioActual->piso = strtoupper($_POST["piso"]);
    $domicilioActual->depto = strtoupper($_POST["depto"]);
    $domicilioActual->cod_postal = strtoupper($_POST["cod_postal"]);
    $domicilioActual->telefono = strtoupper($_POST["telefono"]);

    $domicilioActual->Provincia = $provinciaActual;
    $domicilioActual->Localidad = $localidadActual;
    $domicilioActual->Calle = $calleActual;
    $domicilioActual->PartidoDepto = $partidodeptoActual;
    $domicilioActual->save();
            } else {
                $domicilioActual = false;
            }
    $provinciaNacimiento = new Provincia();
    $provinciaNacimiento = $provinciaNacimiento->Descripcion(strtoupper($_POST["provincia_nacimiento"]));
    $provinciaNacimiento->save();

    $localidadNacimiento = new Localidad();
    $localidadNacimiento = $localidadNacimiento->Descripcion(strtoupper($_POST["localidad_nacimiento"]));
    $localidadNacimiento->save();

    $partidodeptoNacimiento = new PartidoDepto();
    $partidodeptoNacimiento = $partidodeptoNacimiento->Descripcion(strtoupper($_POST["partido_nacimiento"]));
    $partidodeptoNacimiento->save();