Ejemplo n.º 1
0
 public function actionChange()
 {
     $model = new RangoPersonas();
     $listaCambios = '';
     if ($model->load(Yii::$app->request->post()) && $model->validate()) {
         // Comienza Transaccion
         $transaction = Yii::$app->db->beginTransaction();
         try {
             $c = Accesos::updateAll(['id_persona' => $model->idPersonaHasta], ['id_persona' => $model->idPersonaDesde]);
             if ($c > 0) {
                 $listaCambios .= '<p><i>Accesos:</i> cantidad de cambios realizados -> ' . $c . '</p>';
             }
             $c = AccesosAutorizantes::updateAll(['id_persona' => $model->idPersonaHasta], ['id_persona' => $model->idPersonaDesde]);
             if ($c > 0) {
                 $listaCambios .= '<p><i>Accesos (autorizantes):</i> cantidad de cambios realizados -> ' . $c . '</p>';
             }
             $c = Autorizantes::updateAll(['id_persona' => $model->idPersonaHasta], ['id_persona' => $model->idPersonaDesde]);
             if ($c > 0) {
                 $listaCambios .= '<p><i>Autorizantes:</i> cantidad de cambios realizados -> ' . $c . '</p>';
             }
             $c = Llaves::updateAll(['id_persona' => $model->idPersonaHasta], ['id_persona' => $model->idPersonaDesde]);
             if ($c > 0) {
                 $listaCambios .= '<p><i>Llaves (personas):</i> cantidad de cambios realizados -> ' . $c . '</p>';
             }
             $c = Llaves::updateAll(['id_autorizante' => $model->idPersonaHasta], ['id_persona' => $model->idPersonaDesde]);
             if ($c > 0) {
                 $listaCambios .= '<p><i>Llaves (autorizantes):</i> cantidad de cambios realizados -> ' . $c . '</p>';
             }
             $c = Mensajes::updateAll(['model_id' => $model->idPersonaHasta], ['model_id' => $model->idPersonaDesde, 'model' => 'frontend\\models\\Personas']);
             if ($c > 0) {
                 $listaCambios .= '<p><i>Mensajes:</i> cantidad de cambios realizados -> ' . $c . '</p>';
             }
             $c = UfTitularidadPersonas::updateAll(['id_persona' => $model->idPersonaHasta], ['id_persona' => $model->idPersonaDesde]);
             if ($c > 0) {
                 $listaCambios .= '<p><i>Titularidad:</i> cantidad de cambios realizados -> ' . $c . '</p>';
             }
             if ($listaCambios == '') {
                 $listaCambios = '<p>No se ha realizado ningún cambio. Controle los IDs de personas utilizados.</p>';
             }
             $transaction->commit();
         } catch (\Exception $e) {
             $transaction->rollBack();
             Yii::$app->session->addFlash('danger', 'Hubo un error en la grabación');
             throw $e;
         }
         // try..catch
     }
     return $this->render('change', ['model' => $model, 'listaCambios' => $listaCambios]);
 }
Ejemplo n.º 2
0
 public function actionTitularidad($id_uf)
 {
     $UfModel = Uf::findOne($id_uf);
     if (!empty($UfModel->ultUfTitularidad->id)) {
         $query = UfTitularidadPersonas::find()->joinWith('persona')->where(['uf_titularidad_id' => $UfModel->ultUfTitularidad->id]);
         $dataProvider = new ActiveDataProvider(['query' => $query, 'sort' => ['defaultOrder' => ['tipo' => SORT_DESC], 'enableMultiSort' => true]]);
         $response = GridView::widget(['dataProvider' => $dataProvider, 'condensed' => true, 'layout' => '{items}', 'panel' => ['type' => GridView::TYPE_INFO, 'heading' => 'Titularidad actual sobre U.F.' . $id_uf, 'footer' => false, 'before' => false, 'after' => false], 'panelHeadingTemplate' => '{heading}', 'resizableColumns' => false, 'columns' => [['attribute' => 'tipo', 'value' => function ($model) {
             return UfTitularidadPersonas::getTipos($model->tipo);
         }], 'id_persona', 'persona.apellido', 'persona.nombre', 'persona.nombre2', 'persona.tipoDoc.desc_tipo_doc_abr', 'persona.nro_doc']]);
     } else {
         $response = '';
     }
     \Yii::$app->response->format = 'json';
     return $response;
 }
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = UfTitularidadPersonas::find();
     // add conditions that should always apply here
     $dataProvider = new ActiveDataProvider(['query' => $query]);
     $this->load($params);
     if (!$this->validate()) {
         // uncomment the following line if you do not want to return any records when validation fails
         // $query->where('0=1');
         return $dataProvider;
     }
     // grid filtering conditions
     $query->andFilterWhere(['id' => $this->id, 'uf_titularidad_id' => $this->uf_titularidad_id, 'id_persona' => $this->id_persona, 'created_by' => $this->created_by, 'created_at' => $this->created_at, 'updated_by' => $this->updated_by, 'updated_at' => $this->updated_at]);
     $query->andFilterWhere(['like', 'tipo', $this->tipo])->andFilterWhere(['like', 'observaciones', $this->observaciones]);
     return $dataProvider;
 }
Ejemplo n.º 4
0
 public function actionFinCesion($uf, $id)
 {
     $model = new UfTitularidad();
     $model->id_uf = $uf;
     $model->tipo_movim = 10;
     $movActual = UfTitularidad::findOne($id);
     $titPers = UfTitularidadPersonas::find()->where(['uf_titularidad_id' => $id])->all();
     $transaction = Yii::$app->db->beginTransaction();
     try {
         $movActual->ultima = false;
         $movActual->save(false);
         $model->fec_desde = $movActual->fec_hasta;
         //$model->fec_hasta=$model->fec_desde;
         $model->fec_hasta = null;
         $model->exp_telefono = $movActual->exp_telefono;
         $model->exp_direccion = $movActual->exp_direccion;
         $model->exp_localidad = $movActual->exp_localidad;
         $model->exp_email = $movActual->exp_email;
         $model->ultima = true;
         $model->save(false);
         // elimina todos los autorizantes actuales de la unidad para reemplazarlos con los nuevos
         Autorizantes::deleteAll(['id_uf' => $model->id_uf]);
         $aut = new Autorizantes();
         $aut->id_uf = $model->id_uf;
         // recorre todos los titulares y solo procesa los cedentes como nuevos titulares
         foreach ($titPers as $tp) {
             if ($tp->tipo == UfTitularidadPersonas::TIPO_CED) {
                 $titp = new UfTitularidadPersonas();
                 $titp->uf_titularidad_id = $model->id;
                 $titp->tipo = UfTitularidadPersonas::TIPO_TIT;
                 $titp->id_persona = $tp->id_persona;
                 $titp->observaciones = $tp->observaciones;
                 $titp->save(false);
                 $aut->id = null;
                 $aut->isNewRecord = true;
                 $aut->id_persona = $titp->id_persona;
                 $aut->save(false);
             }
         }
         $transaction->commit();
         \Yii::$app->session->addFlash('success', 'Movimiento grabado correctamente');
         // limpia todo
         \Yii::$app->session->remove('titpersonas');
         //return $this->redirect(['view', 'id' => $model->id]);
     } catch (\Exception $e) {
         $transaction->rollBack();
         Yii::$app->session->addFlash('danger', 'Hubo un error en la grabación');
         throw $e;
     }
     // try..catch
     return $this->redirect(['view', 'id' => $model->id]);
 }
Ejemplo n.º 5
0
?>

<div class="uf-titularidad-form">
    <?php 
$UfModel = Uf::findOne($model->id_uf);
if (!empty($UfModel->ultUfTitularidad->id)) {
    $puedeCambiarTipoMovim = true;
    $query = UfTitularidadPersonas::find()->joinWith('persona')->where(['uf_titularidad_id' => $UfModel->ultUfTitularidad->id]);
    $dataProvider = new ActiveDataProvider(['query' => $query, 'sort' => ['defaultOrder' => ['tipo' => SORT_DESC], 'enableMultiSort' => true]]);
    $xDefecto = UfTitularidad::findOne($UfModel->ultUfTitularidad->id);
    $model->exp_telefono = $xDefecto->exp_telefono;
    $model->exp_direccion = $xDefecto->exp_direccion;
    $model->exp_localidad = $xDefecto->exp_localidad;
    $model->exp_email = $xDefecto->exp_email;
    echo GridView::widget(['dataProvider' => $dataProvider, 'condensed' => true, 'layout' => '{items}', 'panel' => ['type' => GridView::TYPE_INFO, 'heading' => 'Titularidad actual sobre U.F.' . $model->id_uf, 'footer' => false, 'before' => false, 'after' => false], 'panelHeadingTemplate' => '{heading}', 'resizableColumns' => false, 'columns' => [['attribute' => 'tipo', 'value' => function ($model) {
        return UfTitularidadPersonas::getTipos($model->tipo);
    }], 'id_persona', 'persona.apellido', 'persona.nombre', 'persona.nombre2', 'persona.tipoDoc.desc_tipo_doc_abr', 'persona.nro_doc', 'observaciones']]);
} else {
    $puedeCambiarTipoMovim = false;
}
?>

			<?php 
$form = ActiveForm::begin();
?>

			<?php 
//$form->field($model, 'id_uf')->textInput()
?>

			<div class='row'>
Ejemplo n.º 6
0
 /**
  * @return \yii\db\ActiveQuery
  */
 public function getUfTitularidadPersonas()
 {
     return $this->hasMany(UfTitularidadPersonas::className(), ['uf_titularidad_id' => 'id']);
 }
Ejemplo n.º 7
0
	
    <?php 
$lbl2 = '';
$pdfHeader = ['L' => ['content' => \Yii::$app->params['lblName']], 'C' => ['content' => $this->title . $lbl2, 'font-style' => 'B'], 'R' => ['content' => '']];
$pdfFooter = ['L' => ['content' => \Yii::$app->params['lblName2']], 'C' => ['content' => 'página {PAGENO} de {nb}'], 'R' => ['content' => 'Fecha:{DATE d/m/Y}']];
$columns = [['attribute' => 'id_uf', 'group' => true], ['attribute' => 'superficie', 'format' => ['decimal', 2], 'hAlign' => 'right', 'group' => true, 'subGroupOf' => 0], ['class' => '\\kartik\\grid\\FormulaColumn', 'value' => function ($model, $key, $index, $widget) {
    if ($model->unidad_estado == 0) {
        return null;
    }
    $p = compact('model', 'key', 'index');
    // Write your formula below
    global $totSup;
    return $widget->col(1, $p) / $totSup * 100;
}, 'format' => ['decimal', 3], 'label' => 'Coeficiente', 'hAlign' => 'right', 'group' => true, 'subGroupOf' => 0], ['attribute' => 'exp_telefono', 'group' => true, 'subGroupOf' => 0], ['attribute' => 'exp_direccion', 'group' => true, 'subGroupOf' => 0], ['attribute' => 'exp_localidad', 'group' => true, 'subGroupOf' => 0], ['attribute' => 'exp_email', 'format' => 'email', 'group' => true, 'subGroupOf' => 0], ['attribute' => 'tipo', 'value' => function ($model) {
    return UfTitularidadPersonas::getTipos($model->tipo);
}, 'filter' => UfTitularidadPersonas::getTipos()], 'apellido', 'nombre', 'nombre2', 'desc_tipo_doc_abr', 'nro_doc', 'observaciones'];
if (\Yii::$app->user->can('exportarListaUf')) {
    // contiene la selección inicial de columnas, es decir, todas
    // por ejemplo [0,1,2,3]
    $poSel = [];
    // contiene las descripciones de las columnas
    // por ejemplo [0=>'Portón', 1=>'Usuario',2=>'Fecha',3=>'Texto']
    $poItems = [];
    $i = -1;
    foreach ($columns as $c) {
        $i++;
        // si es un array busca la clave "attribute"
        if (is_array($c)) {
            foreach ($c as $key => $value) {
                if ($key == 'attribute') {
                    $poSel[] = $i;
 /**
  * Finds the UfTitularidadPersonas model based on its primary key value.
  * If the model is not found, a 404 HTTP exception will be thrown.
  * @param integer $id
  * @return UfTitularidadPersonas the loaded model
  * @throws NotFoundHttpException if the model cannot be found
  */
 protected function findModel($id)
 {
     if (($model = UfTitularidadPersonas::findOne($id)) !== null) {
         return $model;
     } else {
         throw new NotFoundHttpException('The requested page does not exist.');
     }
 }