예제 #1
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;
 }
예제 #3
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]);
 }
예제 #4
0
파일: _form.php 프로젝트: ibergonzi/country
.table-condensed > tbody > tr > th,
.table-condensed > tfoot > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > td {
  padding: 1px;
}
');
?>

<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